ssctp源码
|
@ -1 +0,0 @@
|
|||
Subproject commit 511d9d5102ffd8c554fb851c6ca133e91bf11a5f
|
|
@ -0,0 +1,114 @@
|
|||
/*+YfJSE2wVV4tdUzmsv455q3iGlXZUI2mv/4od/TyZds=*/
|
||||
import React, { Component, } from 'react';
|
||||
import { base, } from 'nc-lightapp-front';
|
||||
const { NCModal, NCButton } = base;
|
||||
|
||||
export default class BatchAddModal extends Component {
|
||||
constructor(props) {
|
||||
super(props)
|
||||
this.state = {}
|
||||
}
|
||||
|
||||
onEnter = () => {
|
||||
this.props.form.setFormStatus('ssctp_accessory_form', 'edit')
|
||||
this.props.form.EmptyAllFormValue('ssctp_accessory_form')
|
||||
}
|
||||
|
||||
onButtonClick = (props, key) => {
|
||||
const {
|
||||
onHide,
|
||||
} = props
|
||||
if (key === 'batch_save') { // 保存 拆行
|
||||
this.batchSave()
|
||||
} else if (key === 'batch_cancel') { // 取消
|
||||
onHide('cancel')
|
||||
}
|
||||
}
|
||||
|
||||
batchSave = () => {
|
||||
const {
|
||||
form: { getAllFormValue, isCheckNow, },
|
||||
headSaveHandle, onHide,
|
||||
} = this.props
|
||||
if (!isCheckNow('ssctp_accessory_form')) return // 必输校验
|
||||
|
||||
const values = getAllFormValue('ssctp_accessory_form').rows[0].values
|
||||
const formVals = this.copyFormVals(values)
|
||||
const {
|
||||
pk_org, pk_transtype,
|
||||
} = values
|
||||
|
||||
const pk_orgArray = pk_org.value.split(','),
|
||||
pk_transtypeArray = pk_transtype.value.split(','),
|
||||
pk_orgDisplayArray = pk_org.display.split(','),
|
||||
pk_transtypeDisplayArray = pk_transtype.display.split(',')
|
||||
let index = -1
|
||||
while(++index < pk_orgArray.length) {
|
||||
const pk_orgVal = pk_orgArray[index], pk_orgDisplay = pk_orgDisplayArray[index]
|
||||
let _index = -1
|
||||
while(++_index < pk_transtypeArray.length) {
|
||||
const pk_transtypeVal = pk_transtypeArray[_index], pk_transtypeDisplay = pk_transtypeDisplayArray[_index]
|
||||
|
||||
formVals.pk_org.value = pk_orgVal
|
||||
formVals.pk_org.display = pk_orgDisplay
|
||||
formVals.pk_transtype.value = pk_transtypeVal
|
||||
formVals.pk_transtype.display = pk_transtypeDisplay
|
||||
|
||||
this.props.editTable.addRow('ssctp_accessory_list', 0, false, formVals)
|
||||
}
|
||||
}
|
||||
|
||||
onHide('save')
|
||||
headSaveHandle()
|
||||
}
|
||||
|
||||
// 拷贝行数据
|
||||
copyFormVals = (data) => {
|
||||
const values = {}
|
||||
for (let attr in data) {
|
||||
values[attr] = {
|
||||
value: data[attr].value,
|
||||
display: data[attr].display,
|
||||
}
|
||||
}
|
||||
return values
|
||||
}
|
||||
|
||||
render() {
|
||||
const {
|
||||
props: {
|
||||
show,
|
||||
multiLang,
|
||||
onHide,
|
||||
form: { createForm, },
|
||||
},
|
||||
state: {},
|
||||
onEnter,
|
||||
onButtonClick,
|
||||
} = this
|
||||
|
||||
return (
|
||||
<NCModal
|
||||
fieldid="BatchAddModalImage"
|
||||
show={show}
|
||||
onHide={() => onHide('cancel')}
|
||||
onEnter={onEnter}
|
||||
size='lg'
|
||||
>
|
||||
<NCModal.Header closeButton={true}>
|
||||
<NCModal.Title>{multiLang['701010DOOROAD-020']}</NCModal.Title>
|
||||
</NCModal.Header>
|
||||
<NCModal.Body>
|
||||
{createForm('ssctp_accessory_form', {
|
||||
isNoStandard: true,
|
||||
})}
|
||||
</NCModal.Body>
|
||||
<NCModal.Footer>
|
||||
<NCButton fieldid='batch-save' colors='primary' onClick={() => onButtonClick(this.props, 'batch_save')}>{multiLang['701010DOOROAD-006']}</NCButton>
|
||||
<NCButton fieldid='batch-cancel' onClick={() => onButtonClick(this.props, 'batch_cancel')}>{multiLang['701010DOOROAD-007']}</NCButton>
|
||||
</NCModal.Footer>
|
||||
</NCModal>
|
||||
)
|
||||
}
|
||||
}
|
||||
/*+YfJSE2wVV4tdUzmsv455q3iGlXZUI2mv/4od/TyZds=*/
|
|
@ -0,0 +1,79 @@
|
|||
/*3mS3VmANLuMaTtASFDOxHvWNecZeEeby5t7o9BNao9s=*/
|
||||
import { requestPromise, /* setStatePromise ,*/ } from 'ssccommon/utils/asyncFunctions.js';
|
||||
|
||||
import {
|
||||
toast,
|
||||
} from 'nc-lightapp-front';
|
||||
|
||||
/**
|
||||
* @desc 查询
|
||||
* @method asyncQry
|
||||
*/
|
||||
async function asyncQry() {
|
||||
try {
|
||||
const result = await requestPromise({
|
||||
url: `/nccloud/ssctp/dooroad/DRAccessoryShowQueryAction.do`,
|
||||
data: {},
|
||||
});
|
||||
return result
|
||||
} catch (e) {
|
||||
toast({ title: e.message, duration: 5, color: 'danger', })
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* @desc 保存
|
||||
* @method asyncSave
|
||||
*/
|
||||
async function asyncSave(data) {
|
||||
try {
|
||||
const result = await requestPromise({
|
||||
url: `/nccloud/ssctp/dooroad/DRAccessoryShowSaveAction.do`,
|
||||
data,
|
||||
hasErrCallBack: true,
|
||||
});
|
||||
return result
|
||||
} catch (e) {
|
||||
toast({ title: e.message, duration: 5, color: 'danger', })
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* @desc 删除
|
||||
* @method asyncDel
|
||||
*/
|
||||
async function asyncDel(data) {
|
||||
try {
|
||||
const result = await requestPromise({
|
||||
url: `/nccloud/ssctp/dooroad/DRAccessoryShowDelAction.do`,
|
||||
data,
|
||||
});
|
||||
return result
|
||||
} catch (e) {
|
||||
toast({ title: e.message, duration: 5, color: 'danger', })
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* @desc 编辑后事件查询
|
||||
* @method asyncOtherSelect
|
||||
*/
|
||||
async function asyncOtherSelect(data) {
|
||||
try {
|
||||
const result = await requestPromise({
|
||||
url: `/nccloud/ssctp/dooroad/DROtherSelectOtsAction.do`,
|
||||
data,
|
||||
});
|
||||
return result
|
||||
} catch (e) {
|
||||
toast({ title: e.message, duration: 5, color: 'danger', })
|
||||
}
|
||||
}
|
||||
|
||||
export {
|
||||
asyncQry,
|
||||
asyncSave,
|
||||
asyncDel,
|
||||
asyncOtherSelect,
|
||||
}
|
||||
/*3mS3VmANLuMaTtASFDOxHvWNecZeEeby5t7o9BNao9s=*/
|
|
@ -0,0 +1,60 @@
|
|||
/*pmFWCFu5nhKkBzYmrkBaka23LzwyeVw+yP0Qu3SWeVg=*/
|
||||
import {
|
||||
getMultiLang,
|
||||
} from 'nc-lightapp-front';
|
||||
|
||||
export default function ({
|
||||
createUIDom, meta: { setMeta },
|
||||
button: { setButtons, createOprationButton, setButtonDisabled,},
|
||||
}) {
|
||||
const that = this
|
||||
createUIDom({}, function({ template, button }) {
|
||||
getMultiLang({moduleId: 7010, domainName: 'ssctp', currentLocale: 'zh-CN', callback: multiLang => {
|
||||
// 列表参照过滤
|
||||
template.ssctp_accessory_list.items.forEach((item, idx, items) => {
|
||||
if (item.attrcode === 'pk_transtype') {
|
||||
item.queryCondition = () => ({
|
||||
GridRefActionExt: 'nccloud.web.ssctp.sscbd.ref.sqlbuilder.TranstypeForDRRefBuilder',
|
||||
})
|
||||
}
|
||||
})
|
||||
|
||||
// 批量新增参照过滤
|
||||
template.ssctp_accessory_form.items.forEach((item, idx, items) => {
|
||||
if (item.attrcode === 'pk_transtype') {
|
||||
item.queryCondition = () => ({
|
||||
GridRefActionExt: 'nccloud.web.ssctp.sscbd.ref.sqlbuilder.TranstypeForDRRefBuilder',
|
||||
})
|
||||
}
|
||||
})
|
||||
|
||||
// // 添加操作列
|
||||
// template.ssctp_accessory_list.items.push({
|
||||
// label: multiLang['701010DOOROAD-013'],
|
||||
// attrcode: "opr",
|
||||
// itemtype: "customer",
|
||||
// visible: true,
|
||||
// width: "100px",
|
||||
// fixed: "right",
|
||||
// render: (node, values, idx) => {
|
||||
// return createOprationButton(['param'], {
|
||||
// area: 'list_btnArea',
|
||||
// onButtonClick: (props, key) => {
|
||||
// that.showParamModal(values, idx)
|
||||
// }
|
||||
// });
|
||||
// }
|
||||
// })
|
||||
|
||||
setMeta(template);
|
||||
setButtons(button);
|
||||
that.setState({multiLang});
|
||||
|
||||
that.changePageStatu('browse')
|
||||
setButtonDisabled({Delete_head: true})
|
||||
that.listQry()
|
||||
|
||||
}})
|
||||
});
|
||||
}
|
||||
/*pmFWCFu5nhKkBzYmrkBaka23LzwyeVw+yP0Qu3SWeVg=*/
|
|
@ -0,0 +1,286 @@
|
|||
/*FDKFkr+TYgGKTTudQv9suM5TObrl0kaUnLjqLMCkTsQ=*/
|
||||
import React, { Component } from 'react';
|
||||
import ReactDOM from 'react-dom';
|
||||
import { createPage, promptBox, toast, } from "nc-lightapp-front";
|
||||
import initTemplate from "./events/initTemplate.js";
|
||||
import BillListStyle from 'ssccommon/components/bill-list';
|
||||
import AffixInterfaceSettingModal from './modal.js'
|
||||
import {
|
||||
asyncSave,
|
||||
asyncQry,
|
||||
asyncDel,
|
||||
asyncOtherSelect,
|
||||
} from './events/async.js'
|
||||
import BatchAddModal from './BatchAdd.js'
|
||||
|
||||
class AffixInterfaceSetting extends Component {
|
||||
constructor(props) {
|
||||
super(props);
|
||||
this.state = {
|
||||
showModal: false, // 弹窗显示
|
||||
multiLang: {}, // 多语
|
||||
showBatchAddModal: false, // 批量添加
|
||||
pageStatus: 'browse', // 页面状态
|
||||
};
|
||||
|
||||
initTemplate.call(this, props);
|
||||
}
|
||||
|
||||
componentDidMount() {
|
||||
// 浏览器原生提示
|
||||
window.onbeforeunload = () => {
|
||||
if (this.state.pageStatus === 'edit') return ''
|
||||
}
|
||||
}
|
||||
|
||||
// 改变页面状态
|
||||
changePageStatu = status => {
|
||||
this.props.button.setButtonVisible({
|
||||
Add_head: true,
|
||||
Edit_head: status === 'browse',
|
||||
Delete_head: true,
|
||||
Save_head: status === 'edit',
|
||||
Cancel_head: status === 'edit',
|
||||
BatchAdd: status === 'browse',
|
||||
})
|
||||
this.props.editTable.setStatus('ssctp_accessory_list', status)
|
||||
this.setState({pageStatus: status})
|
||||
this.props.button.setMainButton('Add_head', status === 'browse')
|
||||
}
|
||||
|
||||
// 头部按钮组事件
|
||||
headerBtnEventDistribute = () => ({
|
||||
Add_head: () => this.headAddHandle(),
|
||||
Edit_head: () => this.headEditHandle(),
|
||||
Delete_head: () => this.headDelHandle(),
|
||||
Save_head: () => this.headSaveHandle(),
|
||||
Cancel_head: () => this.headCancelHandle(),
|
||||
BatchAdd: () => this.setState({showBatchAddModal: true})
|
||||
})
|
||||
|
||||
// 增加
|
||||
headAddHandle = () => {
|
||||
const rows = this.props.editTable.getAllData('ssctp_accessory_list').rows
|
||||
this.props.editTable.addRow('ssctp_accessory_list', rows.length, true, {})
|
||||
this.changePageStatu('edit')
|
||||
}
|
||||
|
||||
// 修改
|
||||
headEditHandle = () => {
|
||||
this.changePageStatu('edit')
|
||||
}
|
||||
|
||||
// 取消提示
|
||||
headCancelHandle = () => {
|
||||
// 浏览态
|
||||
return promptBox({
|
||||
color: 'warning',
|
||||
title: this.state.multiLang['701010DOOROAD-007'],
|
||||
content: this.state.multiLang['701010DOOROAD-019'],
|
||||
noFooter: false,
|
||||
noCancelBtn: false,
|
||||
beSureBtnClick: this.sureCancel,
|
||||
cancelBtnClick: () => {},
|
||||
closeByClickBackDrop: true,
|
||||
})
|
||||
}
|
||||
|
||||
// 确定取消
|
||||
sureCancel = () => {
|
||||
// 重新查询列表
|
||||
this.listQry()
|
||||
// 浏览态
|
||||
this.changePageStatu('browse')
|
||||
}
|
||||
|
||||
// 隐藏弹窗
|
||||
onHide = () => {
|
||||
this.setState({showModal: false})
|
||||
}
|
||||
|
||||
// 显示弹窗
|
||||
showParamModal = (row, index) => {
|
||||
this.setState({showModal: true})
|
||||
}
|
||||
|
||||
// 删除提示
|
||||
headDelHandle = () => {
|
||||
if (this.state.pageStatus === 'browse') {
|
||||
const checkedRows = this.props.editTable.getCheckedRows('ssctp_accessory_list')
|
||||
if (!checkedRows.length) return
|
||||
return promptBox({
|
||||
color: 'warning',
|
||||
title: this.state.multiLang['701010DOOROAD-003'],
|
||||
content: this.state.multiLang['701010DOOROAD-018'],
|
||||
noFooter: false,
|
||||
noCancelBtn: false,
|
||||
beSureBtnClick: this.sureDel,
|
||||
cancelBtnClick: () => {},
|
||||
closeByClickBackDrop: true,
|
||||
})
|
||||
} else {
|
||||
const checkedIndex = this.props.editTable.getCheckedRows('ssctp_accessory_list').map(row => row.index)
|
||||
if (!checkedIndex.length) return
|
||||
this.props.editTable.deleteTableRowsByIndex('ssctp_accessory_list', checkedIndex)
|
||||
}
|
||||
}
|
||||
|
||||
// 列表查询
|
||||
listQry = async (isRefresh = false) => {
|
||||
const response = await asyncQry()
|
||||
const {success, data} = response
|
||||
if (!success) return
|
||||
this.props.editTable.setTableData('ssctp_accessory_list', data ? data.ssctp_accessory_list : {rows: []})
|
||||
if (isRefresh) {
|
||||
toast({title: this.state.multiLang['701010DOOROAD-022'], duration: 5})
|
||||
}
|
||||
}
|
||||
|
||||
// 保存
|
||||
headSaveHandle = async () => {
|
||||
const {
|
||||
editTable: { filterEmptyRows, checkRequired, getAllData, setTableData},
|
||||
} = this.props
|
||||
filterEmptyRows('ssctp_accessory_list', ['showtype'])
|
||||
const tableData = getAllData('ssctp_accessory_list')
|
||||
if (!checkRequired('ssctp_accessory_list', tableData.rows)) return
|
||||
const response = await asyncSave({ssctp_accessory_list: tableData})
|
||||
if (!response) return
|
||||
const {success, data} = response
|
||||
if (!success) return
|
||||
setTableData('ssctp_accessory_list', data ? data.ssctp_accessory_list : {rows: []})
|
||||
this.changePageStatu('browse')
|
||||
toast({ title: this.state.multiLang['701010DOOROAD-016'], duration: 5})
|
||||
}
|
||||
|
||||
// 确定删除
|
||||
sureDel = async () => {
|
||||
const {
|
||||
deleteTableRowsByIndex, getCheckedRows, getAllData, setTableData,
|
||||
} = this.props.editTable
|
||||
|
||||
const toDelIdxs = getCheckedRows('ssctp_accessory_list').map(row => row.index)
|
||||
deleteTableRowsByIndex('ssctp_accessory_list', toDelIdxs)
|
||||
|
||||
const response = await asyncDel({ssctp_accessory_list: getAllData('ssctp_accessory_list')})
|
||||
const {success, data} = response
|
||||
if (!success || !data) return
|
||||
|
||||
setTableData('ssctp_accessory_list', data.ssctp_accessory_list)
|
||||
toast({ title: this.state.multiLang['701010DOOROAD-017'], duration: 5})
|
||||
}
|
||||
|
||||
// 列表编辑后事件
|
||||
onAfterEvent = async (props, areaId, key, currentValue, changedrows, index, row, ...others) => {
|
||||
if (key === 'pk_transtype') {
|
||||
const transtype_code = currentValue.refcode || ''
|
||||
props.editTable.setValByKeyAndIndex(areaId, index, 'transtype_code', {value: transtype_code, display: transtype_code})
|
||||
}
|
||||
|
||||
// if (key !== 'pk_ots') {
|
||||
// return true
|
||||
// }
|
||||
// const {
|
||||
// editTable: { setValByKeyAndIndex, },
|
||||
// } = props
|
||||
// if (!currentValue.refpk) {
|
||||
// setValByKeyAndIndex(areaId, index, 'url', {value: '', display: ''})
|
||||
// return true
|
||||
// }
|
||||
// const response = await asyncOtherSelect({pk_ots: currentValue.refpk})
|
||||
// const {success, data} = response
|
||||
// if (!success || !data) return true
|
||||
// setValByKeyAndIndex(areaId, index, 'url', {value: `${data.ip}:${data.port}`, display: `${data.ip}:${data.port}`})
|
||||
}
|
||||
|
||||
// 列表选中变更事件
|
||||
selectedChange = (props, areaId, newVal, oldVal) => {
|
||||
this.props.button.setButtonDisabled({Delete_head: !newVal})
|
||||
}
|
||||
|
||||
// 刷新
|
||||
refreshButtonEvent = () => {
|
||||
this.listQry(true)
|
||||
}
|
||||
|
||||
render() {
|
||||
const {
|
||||
state: {
|
||||
multiLang,
|
||||
showBatchAddModal,
|
||||
pageStatus,
|
||||
},
|
||||
props: {
|
||||
getSearchParam,
|
||||
editTable: { createEditTable, },
|
||||
},
|
||||
headerBtnEventDistribute,
|
||||
onHide,
|
||||
onAfterEvent,
|
||||
selectedChange,
|
||||
changePageStatu,
|
||||
refreshButtonEvent,
|
||||
headSaveHandle,
|
||||
} = this
|
||||
|
||||
return (
|
||||
<BillListStyle {...this.props}>
|
||||
|
||||
<BillListStyle.HeadArea
|
||||
title={getSearchParam('n') || multiLang['701010DOOROAD-011']}
|
||||
refreshButtonEvent={refreshButtonEvent}
|
||||
status={pageStatus}
|
||||
>
|
||||
{/* 头部按钮组 */}
|
||||
<BillListStyle.ButtonGroup
|
||||
area={'head_btnArea'}
|
||||
buttonEvent={headerBtnEventDistribute}
|
||||
/>
|
||||
</BillListStyle.HeadArea>
|
||||
|
||||
<BillListStyle.BodyArea>
|
||||
{/* 列表 */}
|
||||
{createEditTable(
|
||||
'ssctp_accessory_list',
|
||||
{
|
||||
showIndex: true,
|
||||
showCheck: true,
|
||||
isAddRow: true,
|
||||
onAfterEvent,
|
||||
selectedChange,
|
||||
adaptionHeight: true,
|
||||
},
|
||||
)}
|
||||
</BillListStyle.BodyArea>
|
||||
|
||||
<AffixInterfaceSettingModal
|
||||
onHide={onHide}
|
||||
{...this.state}
|
||||
{...this.props}
|
||||
/>
|
||||
|
||||
<BatchAddModal
|
||||
show={showBatchAddModal}
|
||||
onHide={action => {
|
||||
this.setState({showBatchAddModal: false})
|
||||
if (action === 'save') {
|
||||
changePageStatu('edit')
|
||||
} else {
|
||||
changePageStatu('browse')
|
||||
}
|
||||
}}
|
||||
setPageEdit={() => changePageStatu('edit')}
|
||||
headSaveHandle={headSaveHandle}
|
||||
{...this.state}
|
||||
{...this.props}
|
||||
/>
|
||||
|
||||
</BillListStyle>
|
||||
);
|
||||
}
|
||||
}
|
||||
|
||||
AffixInterfaceSetting = createPage({ mutiLangCode: '7010' })(AffixInterfaceSetting);
|
||||
ReactDOM.render(<AffixInterfaceSetting/>, document.querySelector("#app"));
|
||||
|
||||
/*FDKFkr+TYgGKTTudQv9suM5TObrl0kaUnLjqLMCkTsQ=*/
|
|
@ -0,0 +1,51 @@
|
|||
/*8o+P8J7kLOMsCOkr3TeeGIRKKnnuiYLht9+O74e2aAU=*/
|
||||
import React, { Component, } from 'react';
|
||||
import { base, } from 'nc-lightapp-front';
|
||||
const { NCModal, NCButton,} = base;
|
||||
|
||||
export default class AffixInterfaceSettingModal extends Component {
|
||||
constructor(props) {
|
||||
super(props)
|
||||
this.state = {}
|
||||
}
|
||||
|
||||
render() {
|
||||
const {
|
||||
props: {
|
||||
showModal,
|
||||
multiLang,
|
||||
editTable: { createEditTable, },
|
||||
button: { createButtonApp, },
|
||||
onHide,
|
||||
},
|
||||
state: {},
|
||||
} = this
|
||||
|
||||
return (
|
||||
<NCModal
|
||||
fieldid="AffixInterfaceSettingModal"
|
||||
show={showModal}
|
||||
onHide={onHide}
|
||||
size='lg'
|
||||
>
|
||||
<NCModal.Header closeButton={true}>
|
||||
<NCModal.Title>{multiLang['701010DOOROAD-010']}</NCModal.Title>
|
||||
</NCModal.Header>
|
||||
<NCModal.Body>
|
||||
{createEditTable('param', {
|
||||
showIndex: true,
|
||||
showCheck: true,
|
||||
isAddRow: true,
|
||||
})}
|
||||
</NCModal.Body>
|
||||
<NCModal.Footer>
|
||||
{createButtonApp({
|
||||
area: 'form_btnArea',
|
||||
onButtonClick: (props, key) => {},
|
||||
})}
|
||||
</NCModal.Footer>
|
||||
</NCModal>
|
||||
)
|
||||
}
|
||||
}
|
||||
/*8o+P8J7kLOMsCOkr3TeeGIRKKnnuiYLht9+O74e2aAU=*/
|
|
@ -0,0 +1,78 @@
|
|||
/*3mS3VmANLuMaTtASFDOxHvWNecZeEeby5t7o9BNao9s=*/
|
||||
import { requestPromise, /* setStatePromise ,*/ } from 'ssccommon/utils/asyncFunctions.js';
|
||||
|
||||
import {
|
||||
toast,
|
||||
} from 'nc-lightapp-front';
|
||||
|
||||
/**
|
||||
* @desc 查询
|
||||
* @method asyncQry
|
||||
*/
|
||||
async function asyncQry() {
|
||||
try {
|
||||
const result = await requestPromise({
|
||||
url: `/nccloud/ssctp/dooroad/DROtsQueryAction.do`,
|
||||
data: {},
|
||||
});
|
||||
return result
|
||||
} catch (e) {
|
||||
toast({ title: e.message, duration: 5, color: 'danger', })
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* @desc 新增
|
||||
* @method asyncAdd
|
||||
*/
|
||||
async function asyncAdd(data) {
|
||||
try {
|
||||
const result = await requestPromise({
|
||||
url: `/nccloud/ssctp/dooroad/DROtsAddAction.do`,
|
||||
data,
|
||||
});
|
||||
return result
|
||||
} catch (e) {
|
||||
toast({ title: e.message, duration: 5, color: 'danger', })
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* @desc 删除
|
||||
* @method asyncDel
|
||||
*/
|
||||
async function asyncDel(data) {
|
||||
try {
|
||||
const result = await requestPromise({
|
||||
url: `/nccloud/ssctp/dooroad/DROtsDelAction.do`,
|
||||
data,
|
||||
});
|
||||
return result
|
||||
} catch (e) {
|
||||
toast({ title: e.message, duration: 5, color: 'danger', })
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* @desc 保存
|
||||
* @method asyncSave
|
||||
*/
|
||||
async function asyncSave(data) {
|
||||
try {
|
||||
const result = await requestPromise({
|
||||
url: `/nccloud/ssctp/dooroad/DROtsSaveAction.do`,
|
||||
data,
|
||||
});
|
||||
return result
|
||||
} catch (e) {
|
||||
toast({ title: e.message, duration: 5, color: 'danger', })
|
||||
}
|
||||
}
|
||||
|
||||
export {
|
||||
asyncQry,
|
||||
asyncAdd,
|
||||
asyncDel,
|
||||
asyncSave,
|
||||
}
|
||||
/*3mS3VmANLuMaTtASFDOxHvWNecZeEeby5t7o9BNao9s=*/
|
|
@ -0,0 +1,48 @@
|
|||
/*pmFWCFu5nhKkBzYmrkBaka23LzwyeVw+yP0Qu3SWeVg=*/
|
||||
import {
|
||||
getMultiLang,
|
||||
} from 'nc-lightapp-front';
|
||||
|
||||
export default function ({
|
||||
createUIDom, meta: { setMeta },
|
||||
button: { setButtons, createOprationButton, setPopContent, },
|
||||
}) {
|
||||
const that = this
|
||||
createUIDom({}, function({ template, button }) {
|
||||
getMultiLang({moduleId: 7010, domainName: 'ssctp', currentLocale: 'zh-CN', callback: multiLang => {
|
||||
|
||||
// 添加操作列
|
||||
template.ssctp_ots_list.items.push({
|
||||
label: multiLang['701010DOOROAD-013'],
|
||||
attrcode: "opr",
|
||||
itemtype: "customer",
|
||||
visible: true,
|
||||
width: "120px",
|
||||
fixed: "right",
|
||||
render: (node, values, idx) => {
|
||||
return createOprationButton(['Edit', 'Delete'], {
|
||||
area: 'list_btnArea',
|
||||
onButtonClick: (props, key) => {
|
||||
if ( key === 'Edit') {
|
||||
that.setRowEditable(values)
|
||||
} else if (key === 'Delete') {
|
||||
that.delRow(values, idx)
|
||||
}
|
||||
}
|
||||
});
|
||||
}
|
||||
})
|
||||
|
||||
setMeta(template);
|
||||
setButtons(button);
|
||||
that.setState({multiLang})
|
||||
|
||||
setPopContent('Delete', multiLang['701010DOOROAD-014'])
|
||||
|
||||
// 初始化查询
|
||||
that.listQry()
|
||||
|
||||
}})
|
||||
});
|
||||
}
|
||||
/*pmFWCFu5nhKkBzYmrkBaka23LzwyeVw+yP0Qu3SWeVg=*/
|
|
@ -0,0 +1,171 @@
|
|||
/*FDKFkr+TYgGKTTudQv9suM5TObrl0kaUnLjqLMCkTsQ=*/
|
||||
import React, { Component } from 'react';
|
||||
import ReactDOM from 'react-dom';
|
||||
import { createPage, toast, } from "nc-lightapp-front";
|
||||
import initTemplate from "./events/initTemplate.js";
|
||||
import BillListStyle from 'ssccommon/components/bill-list';
|
||||
import BusinessSysRegisModal from './modal.js'
|
||||
import {
|
||||
asyncQry,
|
||||
asyncSave,
|
||||
asyncAdd,
|
||||
asyncDel,
|
||||
} from './events/async.js'
|
||||
|
||||
class BusinessSysRegis extends Component {
|
||||
constructor(props) {
|
||||
super(props);
|
||||
this.state = {
|
||||
showModal: false, // 显示弹窗
|
||||
multiLang: {}, // 多语
|
||||
modalStatu: 'add', // 弹窗状态 增加/修改
|
||||
};
|
||||
|
||||
initTemplate.call(this, props);
|
||||
}
|
||||
|
||||
componentDidMount() {
|
||||
// 浏览器原生提示
|
||||
window.onbeforeunload = () => {
|
||||
if (this.state.showModal) return ''
|
||||
}
|
||||
}
|
||||
|
||||
// 头部按钮组事件
|
||||
headerBtnEventDistribute = () => ({
|
||||
Add: () => this.setState({showModal: true, modalStatu: 'add'}),
|
||||
})
|
||||
|
||||
// 弹窗隐藏
|
||||
onHide = () => {
|
||||
this.props.form.EmptyAllFormValue('ssctp_ots_form')
|
||||
this.setState({showModal: false})
|
||||
}
|
||||
|
||||
// 保存
|
||||
modalSave = async () => {
|
||||
const {
|
||||
props: {
|
||||
form: { getAllFormValue, isCheckNow, },
|
||||
table: { setAllTableData, },
|
||||
},
|
||||
state: { modalStatu, multiLang,},
|
||||
} = this
|
||||
|
||||
if (!isCheckNow('ssctp_ots_form')) return // 表单校验
|
||||
|
||||
if (modalStatu === 'add') {
|
||||
const response = await asyncAdd({
|
||||
ssctp_ots_form: getAllFormValue('ssctp_ots_form'),
|
||||
})
|
||||
const {success, data} = response
|
||||
if (!success || !data) return
|
||||
setAllTableData('ssctp_ots_list', data.ssctp_ots_list)
|
||||
this.setState({showModal: false})
|
||||
toast({ title: multiLang['701010DOOROAD-016'], duration: 5})
|
||||
} else {
|
||||
const response = await asyncSave({
|
||||
ssctp_ots_form: getAllFormValue('ssctp_ots_form'),
|
||||
})
|
||||
const {success, data} = response
|
||||
if (!success || !data) return
|
||||
setAllTableData('ssctp_ots_list', data.ssctp_ots_list)
|
||||
this.setState({showModal: false})
|
||||
toast({ title: multiLang['701010DOOROAD-016'], duration: 5})
|
||||
}
|
||||
}
|
||||
|
||||
// 列表查询
|
||||
listQry = async (isRefresh = false) => {
|
||||
const response = await asyncQry()
|
||||
const {success, data} = response
|
||||
if (!success) return
|
||||
this.props.table.setAllTableData('ssctp_ots_list', data ? data.ssctp_ots_list : {rows: []})
|
||||
if (isRefresh) {
|
||||
toast({title: this.state.multiLang['701010DOOROAD-022'], duration: 5})
|
||||
}
|
||||
}
|
||||
|
||||
// 修改
|
||||
setRowEditable = values => {
|
||||
this.setState({showModal: true, modalStatu: 'edit'})
|
||||
this.props.form.setFormItemsDisabled('ssctp_ots_form', { 'code': true });
|
||||
this.props.form.setAllFormValue({ssctp_ots_form: {rows: [{values}]}})
|
||||
}
|
||||
|
||||
// 删除
|
||||
delRow = async (record, idx) => {
|
||||
const values = {}
|
||||
for (let attr in record) {
|
||||
if (attr !== 'numberindex' && attr !== 'key' && typeof record[attr] === 'object') {
|
||||
values[attr] = { value: record[attr].value }
|
||||
}
|
||||
}
|
||||
const response = await asyncDel({ssctp_ots_list: {areaType: 'form', rows: [{values}]}})
|
||||
const {success, data} = response
|
||||
if (!success) return
|
||||
this.props.table.setAllTableData('ssctp_ots_list', data ? data.ssctp_ots_list : {rows: []})
|
||||
toast({ title: this.state.multiLang['701010DOOROAD-017'], duration: 5})
|
||||
}
|
||||
|
||||
// 刷新
|
||||
refreshButtonEvent = () => {
|
||||
this.listQry(true)
|
||||
}
|
||||
|
||||
render() {
|
||||
const {
|
||||
state: {
|
||||
multiLang,
|
||||
},
|
||||
props: {
|
||||
getSearchParam,
|
||||
table: { createSimpleTable, },
|
||||
},
|
||||
headerBtnEventDistribute,
|
||||
onHide,
|
||||
modalSave,
|
||||
refreshButtonEvent,
|
||||
} = this
|
||||
|
||||
return (
|
||||
<BillListStyle {...this.props}>
|
||||
|
||||
<BillListStyle.HeadArea
|
||||
title={getSearchParam('n') || multiLang['701010DOOROAD-001']}
|
||||
refreshButtonEvent={refreshButtonEvent}
|
||||
status={'browse'}
|
||||
>
|
||||
{/* 头部按钮组 */}
|
||||
<BillListStyle.ButtonGroup
|
||||
area={'head_btnArea'}
|
||||
buttonEvent={headerBtnEventDistribute}
|
||||
/>
|
||||
</BillListStyle.HeadArea>
|
||||
|
||||
<BillListStyle.BodyArea>
|
||||
{/* 列表 */}
|
||||
{createSimpleTable(
|
||||
'ssctp_ots_list',
|
||||
{
|
||||
showIndex: true,
|
||||
},
|
||||
)}
|
||||
</BillListStyle.BodyArea>
|
||||
|
||||
<BusinessSysRegisModal
|
||||
onHide={onHide}
|
||||
modalSave={modalSave}
|
||||
{...this.props}
|
||||
{...this.state}
|
||||
/>
|
||||
|
||||
</BillListStyle>
|
||||
);
|
||||
}
|
||||
}
|
||||
|
||||
BusinessSysRegis = createPage({ mutiLangCode: '7010' })(BusinessSysRegis);
|
||||
ReactDOM.render(<BusinessSysRegis/>, document.querySelector("#app"));
|
||||
|
||||
/*FDKFkr+TYgGKTTudQv9suM5TObrl0kaUnLjqLMCkTsQ=*/
|
|
@ -0,0 +1,70 @@
|
|||
/*8o+P8J7kLOMsCOkr3TeeGIRKKnnuiYLht9+O74e2aAU=*/
|
||||
import React, { Component, } from 'react';
|
||||
import { base, } from 'nc-lightapp-front';
|
||||
const { NCModal, NCButton,} = base;
|
||||
|
||||
export default class BusinessSysRegisModal extends Component {
|
||||
constructor(props) {
|
||||
super(props)
|
||||
this.state = {}
|
||||
}
|
||||
|
||||
// 弹窗打开时
|
||||
onEnter = () => {
|
||||
const {
|
||||
form: {setFormStatus,},
|
||||
} = this.props
|
||||
setFormStatus('ssctp_ots_form', 'edit')
|
||||
}
|
||||
|
||||
render() {
|
||||
const {
|
||||
props: {
|
||||
showModal,
|
||||
onHide,
|
||||
modalSave,
|
||||
multiLang,
|
||||
modalStatu,
|
||||
form: { createForm, },
|
||||
button: { createButtonApp, },
|
||||
},
|
||||
state: {},
|
||||
onEnter,
|
||||
} = this
|
||||
|
||||
return (
|
||||
<NCModal
|
||||
fieldid="BusinessSysRegisModal"
|
||||
show={showModal}
|
||||
onHide={onHide}
|
||||
onEnter={onEnter}
|
||||
>
|
||||
<NCModal.Header closeButton={true}>
|
||||
<NCModal.Title>
|
||||
{
|
||||
modalStatu === 'add' ?
|
||||
multiLang['701010DOOROAD-004'] :
|
||||
multiLang['701010DOOROAD-005']
|
||||
}
|
||||
</NCModal.Title>
|
||||
</NCModal.Header>
|
||||
<NCModal.Body>
|
||||
{createForm('ssctp_ots_form', {})}
|
||||
</NCModal.Body>
|
||||
<NCModal.Footer>
|
||||
{createButtonApp({
|
||||
area: 'form_btnArea',
|
||||
onButtonClick: (props, key) => {
|
||||
if (key === 'Save') {
|
||||
modalSave()
|
||||
} else if (key === 'Cancel') {
|
||||
onHide()
|
||||
}
|
||||
},
|
||||
})}
|
||||
</NCModal.Footer>
|
||||
</NCModal>
|
||||
)
|
||||
}
|
||||
}
|
||||
/*8o+P8J7kLOMsCOkr3TeeGIRKKnnuiYLht9+O74e2aAU=*/
|
|
@ -0,0 +1,114 @@
|
|||
/*+YfJSE2wVV4tdUzmsv455q3iGlXZUI2mv/4od/TyZds=*/
|
||||
import React, { Component, } from 'react';
|
||||
import { base, } from 'nc-lightapp-front';
|
||||
const { NCModal, NCButton } = base;
|
||||
|
||||
export default class BatchAddModal extends Component {
|
||||
constructor(props) {
|
||||
super(props)
|
||||
this.state = {}
|
||||
}
|
||||
|
||||
onEnter = () => {
|
||||
this.props.form.setFormStatus('ssctp_voucheropen_form', 'edit')
|
||||
this.props.form.EmptyAllFormValue('ssctp_voucheropen_form')
|
||||
}
|
||||
|
||||
onButtonClick = (props, key) => {
|
||||
const {
|
||||
onHide,
|
||||
} = props
|
||||
if (key === 'batch_save') { // 保存 拆行
|
||||
this.batchSave()
|
||||
} else if (key === 'batch_cancel') { // 取消
|
||||
onHide('cancel')
|
||||
}
|
||||
}
|
||||
|
||||
batchSave = () => {
|
||||
const {
|
||||
form: { getAllFormValue, isCheckNow, },
|
||||
saveBtnClick, onHide,
|
||||
} = this.props
|
||||
if (!isCheckNow('ssctp_voucheropen_form')) return // 必输校验
|
||||
|
||||
const values = getAllFormValue('ssctp_voucheropen_form').rows[0].values
|
||||
const formVals = this.copyFormVals(values)
|
||||
const {
|
||||
pk_org, pk_transtype,
|
||||
} = values
|
||||
|
||||
const pk_orgArray = pk_org.value.split(','),
|
||||
pk_transtypeArray = pk_transtype.value.split(','),
|
||||
pk_orgDisplayArray = pk_org.display.split(','),
|
||||
pk_transtypeDisplayArray = pk_transtype.display.split(',')
|
||||
let index = -1
|
||||
while(++index < pk_orgArray.length) {
|
||||
const pk_orgVal = pk_orgArray[index], pk_orgDisplay = pk_orgDisplayArray[index]
|
||||
let _index = -1
|
||||
while(++_index < pk_transtypeArray.length) {
|
||||
const pk_transtypeVal = pk_transtypeArray[_index], pk_transtypeDisplay = pk_transtypeDisplayArray[_index]
|
||||
|
||||
formVals.pk_org.value = pk_orgVal
|
||||
formVals.pk_org.display = pk_orgDisplay
|
||||
formVals.pk_transtype.value = pk_transtypeVal
|
||||
formVals.pk_transtype.display = pk_transtypeDisplay
|
||||
|
||||
this.props.editTable.addRow('ssctp_voucheropen_list', 0, false, formVals)
|
||||
}
|
||||
}
|
||||
|
||||
onHide('save')
|
||||
saveBtnClick()
|
||||
}
|
||||
|
||||
// 拷贝行数据
|
||||
copyFormVals = (data) => {
|
||||
const values = {}
|
||||
for (let attr in data) {
|
||||
values[attr] = {
|
||||
value: data[attr].value,
|
||||
display: data[attr].display,
|
||||
}
|
||||
}
|
||||
return values
|
||||
}
|
||||
|
||||
render() {
|
||||
const {
|
||||
props: {
|
||||
show,
|
||||
multiLang,
|
||||
onHide,
|
||||
form: { createForm, },
|
||||
},
|
||||
state: {},
|
||||
onEnter,
|
||||
onButtonClick,
|
||||
} = this
|
||||
|
||||
return (
|
||||
<NCModal
|
||||
fieldid="BatchAddModalVoucher"
|
||||
show={show}
|
||||
onHide={() => onHide('cancel')}
|
||||
onEnter={onEnter}
|
||||
size='lg'
|
||||
>
|
||||
<NCModal.Header closeButton={true}>
|
||||
<NCModal.Title>{multiLang['701010DOOROAD-020']}</NCModal.Title>
|
||||
</NCModal.Header>
|
||||
<NCModal.Body>
|
||||
{createForm('ssctp_voucheropen_form', {
|
||||
isNoStandard: true,
|
||||
})}
|
||||
</NCModal.Body>
|
||||
<NCModal.Footer>
|
||||
<NCButton fieldid='batch-save' colors='primary' onClick={() => onButtonClick(this.props, 'batch_save')}>{multiLang['701010DOOROAD-006']}</NCButton>
|
||||
<NCButton fieldid='batch-cancel' onClick={() => onButtonClick(this.props, 'batch_cancel')}>{multiLang['701010DOOROAD-007']}</NCButton>
|
||||
</NCModal.Footer>
|
||||
</NCModal>
|
||||
)
|
||||
}
|
||||
}
|
||||
/*+YfJSE2wVV4tdUzmsv455q3iGlXZUI2mv/4od/TyZds=*/
|
|
@ -0,0 +1,79 @@
|
|||
/*3mS3VmANLuMaTtASFDOxHvWNecZeEeby5t7o9BNao9s=*/
|
||||
import { requestPromise, /* setStatePromise ,*/ } from 'ssccommon/utils/asyncFunctions.js';
|
||||
|
||||
import {
|
||||
toast,
|
||||
} from 'nc-lightapp-front';
|
||||
|
||||
/**
|
||||
* @desc 查询
|
||||
* @method asyncQry
|
||||
*/
|
||||
async function asyncQry() {
|
||||
try {
|
||||
const result = await requestPromise({
|
||||
url: `/nccloud/ssctp/dooroad/DRVoucherOpenQueryAction.do`,
|
||||
data: {},
|
||||
});
|
||||
return result
|
||||
} catch (e) {
|
||||
toast({ title: e.message, duration: 5, color: 'danger', })
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* @desc 删除
|
||||
* @method asyncDel
|
||||
*/
|
||||
async function asyncDel(data) {
|
||||
try {
|
||||
const result = await requestPromise({
|
||||
url: `/nccloud/ssctp/dooroad/DRVoucherOpenDelAction.do`,
|
||||
data,
|
||||
});
|
||||
return result
|
||||
} catch (e) {
|
||||
toast({ title: e.message, duration: 5, color: 'danger', })
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* @desc 保存
|
||||
* @method asyncSave
|
||||
*/
|
||||
async function asyncSave(data) {
|
||||
try {
|
||||
const result = await requestPromise({
|
||||
url: `/nccloud/ssctp/dooroad/DRVoucherOpenSaveAction.do`,
|
||||
data,
|
||||
hasErrCallBack: true,
|
||||
});
|
||||
return result
|
||||
} catch (e) {
|
||||
toast({ title: e.message, duration: 5, color: 'danger', })
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* @desc 编辑后事件查询
|
||||
* @method asyncOtherSelect
|
||||
*/
|
||||
async function asyncOtherSelect(data) {
|
||||
try {
|
||||
const result = await requestPromise({
|
||||
url: `/nccloud/ssctp/dooroad/DROtherSelectOtsAction.do`,
|
||||
data,
|
||||
});
|
||||
return result
|
||||
} catch (e) {
|
||||
toast({ title: e.message, duration: 5, color: 'danger', })
|
||||
}
|
||||
}
|
||||
|
||||
export {
|
||||
asyncQry,
|
||||
asyncDel,
|
||||
asyncSave,
|
||||
asyncOtherSelect,
|
||||
}
|
||||
/*3mS3VmANLuMaTtASFDOxHvWNecZeEeby5t7o9BNao9s=*/
|
|
@ -0,0 +1,61 @@
|
|||
/*pmFWCFu5nhKkBzYmrkBaka23LzwyeVw+yP0Qu3SWeVg=*/
|
||||
import {
|
||||
getMultiLang,
|
||||
} from 'nc-lightapp-front';
|
||||
|
||||
export default function ({
|
||||
createUIDom, meta: { setMeta },
|
||||
button: { setButtons, createOprationButton, setButtonDisabled,},
|
||||
}) {
|
||||
const that = this
|
||||
createUIDom({}, function({ template, button }) {
|
||||
getMultiLang({moduleId: 7010, domainName: 'ssctp', currentLocale: 'zh-CN', callback: multiLang => {
|
||||
|
||||
// 列表参照过滤
|
||||
template.ssctp_voucheropen_list.items.forEach((item, idx, items) => {
|
||||
if (item.attrcode === 'pk_transtype') {
|
||||
item.queryCondition = () => ({
|
||||
GridRefActionExt: 'nccloud.web.ssctp.sscbd.ref.sqlbuilder.TranstypeForDRRefBuilder',
|
||||
})
|
||||
}
|
||||
})
|
||||
|
||||
// 批量新增参照过滤
|
||||
template.ssctp_voucheropen_form.items.forEach((item, idx, items) => {
|
||||
if (item.attrcode === 'pk_transtype') {
|
||||
item.queryCondition = () => ({
|
||||
GridRefActionExt: 'nccloud.web.ssctp.sscbd.ref.sqlbuilder.TranstypeForDRRefBuilder',
|
||||
})
|
||||
}
|
||||
})
|
||||
|
||||
// // 添加操作列
|
||||
// template.ssctp_voucheropen_list.items.push({
|
||||
// label: multiLang['701010DOOROAD-013'],
|
||||
// attrcode: "opr",
|
||||
// itemtype: "customer",
|
||||
// visible: true,
|
||||
// width: "100px",
|
||||
// fixed: "right",
|
||||
// render: (node, values, idx) => {
|
||||
// return createOprationButton(['Param'], {
|
||||
// area: 'list_btnArea',
|
||||
// onButtonClick: (props, key) => {
|
||||
// that.showParamModal(values, idx)
|
||||
// }
|
||||
// });
|
||||
// }
|
||||
// })
|
||||
|
||||
setMeta(template);
|
||||
setButtons(button);
|
||||
that.setState({multiLang})
|
||||
|
||||
that.changePageStatu('browse')
|
||||
setButtonDisabled({Delete: true})
|
||||
that.listQry()
|
||||
|
||||
}})
|
||||
});
|
||||
}
|
||||
/*pmFWCFu5nhKkBzYmrkBaka23LzwyeVw+yP0Qu3SWeVg=*/
|
|
@ -0,0 +1,269 @@
|
|||
/*FDKFkr+TYgGKTTudQv9suM5TObrl0kaUnLjqLMCkTsQ=*/
|
||||
import React, { Component } from 'react';
|
||||
import ReactDOM from 'react-dom';
|
||||
import { createPage, promptBox, toast, } from "nc-lightapp-front";
|
||||
import initTemplate from "./events/initTemplate.js";
|
||||
import BillListStyle from 'ssccommon/components/bill-list';
|
||||
import VoucherOpenModal from './modal.js'
|
||||
import {
|
||||
asyncQry,
|
||||
asyncDel,
|
||||
asyncSave,
|
||||
asyncOtherSelect,
|
||||
} from './events/async.js';
|
||||
import BatchAddModal from './BatchAdd.js'
|
||||
|
||||
class VoucherOpenMode extends Component {
|
||||
constructor(props) {
|
||||
super(props);
|
||||
this.state = {
|
||||
showModal: false, // 显示弹窗
|
||||
multiLang: {}, // 多语
|
||||
showBatchAddModal: false, // 批量添加
|
||||
pageStatus: 'browse', // 页面状态
|
||||
};
|
||||
|
||||
initTemplate.call(this, props);
|
||||
}
|
||||
|
||||
componentDidMount() {
|
||||
// 浏览器原生提示
|
||||
window.onbeforeunload = () => {
|
||||
if (this.state.pageStatus === 'edit') return ''
|
||||
}
|
||||
}
|
||||
|
||||
// 改变页面状态
|
||||
changePageStatu = status => {
|
||||
this.props.button.setButtonVisible({
|
||||
Add: true,
|
||||
Edit: status === 'browse',
|
||||
Delete: true,
|
||||
Save: status === 'edit',
|
||||
Cancel: status === 'edit',
|
||||
BatchAdd: status === 'browse',
|
||||
})
|
||||
this.props.editTable.setStatus('ssctp_voucheropen_list', status)
|
||||
this.setState({pageStatus: status})
|
||||
this.props.button.setMainButton('Add', status === 'browse')
|
||||
}
|
||||
|
||||
// 头部按钮组事件
|
||||
headerBtnEventDistribute = () => ({
|
||||
Add: () => this.addBtnClick(),
|
||||
Edit: () => this.editBtnClick(),
|
||||
Delete: () => this.deleteBtnClick(),
|
||||
Save: () => this.saveBtnClick(),
|
||||
Cancel: () => this.cancelBtnClick(),
|
||||
BatchAdd: () => this.setState({showBatchAddModal: true}),
|
||||
})
|
||||
|
||||
// 显示弹窗
|
||||
showParamModal = (row, index) => {
|
||||
this.setState({showModal: true})
|
||||
}
|
||||
|
||||
// 隐藏弹窗
|
||||
onHide = () => {
|
||||
this.setState({showModal: false})
|
||||
}
|
||||
|
||||
// 新增
|
||||
addBtnClick = () => {
|
||||
const rows = this.props.editTable.getAllData('ssctp_voucheropen_list').rows
|
||||
this.props.editTable.addRow('ssctp_voucheropen_list', rows.length, true, {})
|
||||
this.changePageStatu('edit')
|
||||
}
|
||||
|
||||
// 修改
|
||||
editBtnClick = () => {
|
||||
this.changePageStatu('edit')
|
||||
}
|
||||
|
||||
// 取消
|
||||
cancelBtnClick = () => {
|
||||
this.listQry()
|
||||
this.changePageStatu('browse')
|
||||
}
|
||||
|
||||
// 列表选中变更事件
|
||||
selectedChange = (props, areaId, newVal, oldVal) => {
|
||||
this.props.button.setButtonDisabled({Delete: !newVal})
|
||||
}
|
||||
|
||||
// 列表查询
|
||||
listQry = async (isRefresh = false) => {
|
||||
const response = await asyncQry()
|
||||
const {success, data} = response
|
||||
if (!success) return
|
||||
this.props.editTable.setTableData('ssctp_voucheropen_list', data ? data.ssctp_voucheropen_list : {rows: []})
|
||||
if (isRefresh) {
|
||||
toast({title: this.state.multiLang['701010DOOROAD-022'], duration: 5})
|
||||
}
|
||||
}
|
||||
|
||||
// 保存
|
||||
saveBtnClick = async () => {
|
||||
const {
|
||||
editTable: { filterEmptyRows, checkRequired, getAllData, setTableData},
|
||||
} = this.props
|
||||
filterEmptyRows('ssctp_voucheropen_list', [])
|
||||
const tableData = getAllData('ssctp_voucheropen_list')
|
||||
if (!checkRequired('ssctp_voucheropen_list', tableData.rows)) return
|
||||
const response = await asyncSave({ssctp_voucheropen_list: tableData})
|
||||
if (!response) return
|
||||
const {success, data} = response
|
||||
if (!success) return
|
||||
setTableData('ssctp_voucheropen_list', data ? data.ssctp_voucheropen_list : {})
|
||||
this.changePageStatu('browse')
|
||||
toast({ title: this.state.multiLang['701010DOOROAD-016'], duration: 5})
|
||||
}
|
||||
|
||||
// 删除提示
|
||||
deleteBtnClick = () => {
|
||||
if (this.state.pageStatus === 'browse') {
|
||||
const checkedRows = this.props.editTable.getCheckedRows('ssctp_voucheropen_list')
|
||||
if (!checkedRows.length) return
|
||||
return promptBox({
|
||||
color: 'warning',
|
||||
title: this.state.multiLang['701010DOOROAD-003'],
|
||||
content: this.state.multiLang['701010DOOROAD-018'],
|
||||
noFooter: false,
|
||||
noCancelBtn: false,
|
||||
beSureBtnClick: this.sureDel,
|
||||
cancelBtnClick: () => {},
|
||||
closeByClickBackDrop: true,
|
||||
})
|
||||
} else {
|
||||
const checkedIndex = this.props.editTable.getCheckedRows('ssctp_voucheropen_list').map(row => row.index)
|
||||
if (!checkedIndex.length) return
|
||||
this.props.editTable.deleteTableRowsByIndex('ssctp_voucheropen_list', checkedIndex)
|
||||
}
|
||||
}
|
||||
|
||||
// 确定删除
|
||||
sureDel = async () => {
|
||||
const {
|
||||
deleteTableRowsByIndex, getCheckedRows, getAllData, setTableData,
|
||||
} = this.props.editTable
|
||||
|
||||
const toDelIdxs = getCheckedRows('ssctp_voucheropen_list').map(row => row.index)
|
||||
deleteTableRowsByIndex('ssctp_voucheropen_list', toDelIdxs)
|
||||
|
||||
const response = await asyncDel({ssctp_voucheropen_list: getAllData('ssctp_voucheropen_list')})
|
||||
const {success, data} = response
|
||||
if (!success || !data) return
|
||||
|
||||
setTableData('ssctp_voucheropen_list', data.ssctp_voucheropen_list)
|
||||
toast({ title: this.state.multiLang['701010DOOROAD-017'], duration: 5})
|
||||
}
|
||||
|
||||
// 列表编辑后事件
|
||||
onAfterEvent = async (props, areaId, key, currentValue, changedrows, index, row, ...others) => {
|
||||
if (key === 'pk_transtype') {
|
||||
const transtype_code = currentValue.refcode || ''
|
||||
props.editTable.setValByKeyAndIndex(areaId, index, 'transtype_code', {value: transtype_code, display: transtype_code})
|
||||
}
|
||||
|
||||
// if (key !== 'pk_ots') {
|
||||
// return true
|
||||
// }
|
||||
// const {
|
||||
// editTable: { setValByKeyAndIndex, },
|
||||
// } = props
|
||||
// if (!currentValue.refpk) {
|
||||
// setValByKeyAndIndex(areaId, index, 'url', {value: '', display: ''})
|
||||
// return true
|
||||
// }
|
||||
// const response = await asyncOtherSelect({pk_ots: currentValue.refpk})
|
||||
// const {success, data} = response
|
||||
// if (!success || !data) return true
|
||||
// setValByKeyAndIndex(areaId, index, 'url', {value: `${data.ip}:${data.port}`, display: `${data.ip}:${data.port}`})
|
||||
}
|
||||
|
||||
// 刷新
|
||||
refreshButtonEvent = () => {
|
||||
this.listQry(true)
|
||||
}
|
||||
|
||||
render() {
|
||||
const {
|
||||
state: {
|
||||
multiLang,
|
||||
showBatchAddModal,
|
||||
pageStatus,
|
||||
},
|
||||
props: {
|
||||
getSearchParam,
|
||||
editTable: { createEditTable, },
|
||||
},
|
||||
headerBtnEventDistribute,
|
||||
onHide,
|
||||
onAfterEvent,
|
||||
selectedChange,
|
||||
changePageStatu,
|
||||
refreshButtonEvent,
|
||||
saveBtnClick,
|
||||
} = this
|
||||
|
||||
return (
|
||||
<BillListStyle {...this.props}>
|
||||
|
||||
<BillListStyle.HeadArea
|
||||
title={getSearchParam('n') || multiLang['701010DOOROAD-021']}
|
||||
refreshButtonEvent={refreshButtonEvent}
|
||||
status={pageStatus}
|
||||
>
|
||||
{/* 头部按钮组 */}
|
||||
<BillListStyle.ButtonGroup
|
||||
area={'head_btnArea'}
|
||||
buttonEvent={headerBtnEventDistribute}
|
||||
/>
|
||||
</BillListStyle.HeadArea>
|
||||
|
||||
<BillListStyle.BodyArea>
|
||||
{/* 列表 */}
|
||||
{createEditTable(
|
||||
'ssctp_voucheropen_list',
|
||||
{
|
||||
showIndex: true,
|
||||
showCheck: true,
|
||||
isAddRow: true,
|
||||
onAfterEvent,
|
||||
selectedChange,
|
||||
adaptionHeight: true,
|
||||
},
|
||||
)}
|
||||
</BillListStyle.BodyArea>
|
||||
|
||||
<VoucherOpenModal
|
||||
onHide={onHide}
|
||||
{...this.state}
|
||||
{...this.props}
|
||||
/>
|
||||
|
||||
<BatchAddModal
|
||||
show={showBatchAddModal}
|
||||
onHide={action => {
|
||||
this.setState({showBatchAddModal: false})
|
||||
if (action === 'save') {
|
||||
changePageStatu('edit')
|
||||
} else {
|
||||
changePageStatu('browse')
|
||||
}
|
||||
}}
|
||||
setPageEdit={() => changePageStatu('edit')}
|
||||
saveBtnClick={saveBtnClick}
|
||||
{...this.state}
|
||||
{...this.props}
|
||||
/>
|
||||
|
||||
</BillListStyle>
|
||||
);
|
||||
}
|
||||
}
|
||||
|
||||
VoucherOpenMode = createPage({ mutiLangCode: '7010' })(VoucherOpenMode);
|
||||
ReactDOM.render(<VoucherOpenMode/>, document.querySelector("#app"));
|
||||
|
||||
/*FDKFkr+TYgGKTTudQv9suM5TObrl0kaUnLjqLMCkTsQ=*/
|
|
@ -0,0 +1,51 @@
|
|||
/*8o+P8J7kLOMsCOkr3TeeGIRKKnnuiYLht9+O74e2aAU=*/
|
||||
import React, { Component, } from 'react';
|
||||
import { base, } from 'nc-lightapp-front';
|
||||
const { NCModal, NCButton,} = base;
|
||||
|
||||
export default class VoucherOpenModal extends Component {
|
||||
constructor(props) {
|
||||
super(props)
|
||||
this.state = {}
|
||||
}
|
||||
|
||||
render() {
|
||||
const {
|
||||
props: {
|
||||
showModal,
|
||||
multiLang,
|
||||
onHide,
|
||||
editTable: { createEditTable, },
|
||||
button: { createButtonApp, },
|
||||
},
|
||||
state: {},
|
||||
} = this
|
||||
|
||||
return (
|
||||
<NCModal
|
||||
fieldid="VoucherOpenModal"
|
||||
show={showModal}
|
||||
onHide={onHide}
|
||||
size='lg'
|
||||
>
|
||||
<NCModal.Header closeButton={true}>
|
||||
<NCModal.Title>{multiLang['701010DOOROAD-010']}</NCModal.Title>
|
||||
</NCModal.Header>
|
||||
<NCModal.Body>
|
||||
{createEditTable('ssctp_voucheropen_list', {
|
||||
showIndex: true,
|
||||
showCheck: true,
|
||||
isAddRow: true,
|
||||
})}
|
||||
</NCModal.Body>
|
||||
<NCModal.Footer>
|
||||
{createButtonApp({
|
||||
area: 'form_btnArea',
|
||||
onButtonClick: (props, key) => {},
|
||||
})}
|
||||
</NCModal.Footer>
|
||||
</NCModal>
|
||||
)
|
||||
}
|
||||
}
|
||||
/*8o+P8J7kLOMsCOkr3TeeGIRKKnnuiYLht9+O74e2aAU=*/
|
|
@ -0,0 +1,121 @@
|
|||
/*+YfJSE2wVV4tdUzmsv455q3iGlXZUI2mv/4od/TyZds=*/
|
||||
import React, { Component, } from 'react';
|
||||
import { base, } from 'nc-lightapp-front';
|
||||
const { NCModal, NCButton } = base;
|
||||
|
||||
export default class BatchAddModal extends Component {
|
||||
constructor(props) {
|
||||
super(props)
|
||||
this.state = {}
|
||||
}
|
||||
|
||||
onEnter = () => {
|
||||
this.props.form.setFormStatus('ssctp_detailopen_form', 'edit')
|
||||
this.props.form.EmptyAllFormValue('ssctp_detailopen_form')
|
||||
}
|
||||
|
||||
onButtonClick = (props, key) => {
|
||||
const {
|
||||
onHide,
|
||||
} = props
|
||||
if (key === 'batch_save') { // 保存 拆行
|
||||
this.batchSave()
|
||||
} else if (key === 'batch_cancel') { // 取消
|
||||
onHide('cancel')
|
||||
}
|
||||
}
|
||||
|
||||
batchSave = () => {
|
||||
const {
|
||||
form: { getAllFormValue, isCheckNow, },
|
||||
saveBtnClick, onHide,
|
||||
} = this.props
|
||||
if (!isCheckNow('ssctp_detailopen_form')) return // 必输校验
|
||||
|
||||
const values = getAllFormValue('ssctp_detailopen_form').rows[0].values
|
||||
const formVals = this.copyFormVals(values)
|
||||
const {
|
||||
pk_org, pk_transtype,
|
||||
} = values
|
||||
|
||||
const pk_orgArray = pk_org.value.split(','),
|
||||
pk_transtypeArray = pk_transtype.value.split(','),
|
||||
pk_orgDisplayArray = pk_org.display.split(','),
|
||||
pk_transtypeDisplayArray = pk_transtype.display.split(',')
|
||||
let index = -1
|
||||
while(++index < pk_orgArray.length) {
|
||||
const pk_orgVal = pk_orgArray[index], pk_orgDisplay = pk_orgDisplayArray[index]
|
||||
let _index = -1
|
||||
while(++_index < pk_transtypeArray.length) {
|
||||
const pk_transtypeVal = pk_transtypeArray[_index], pk_transtypeDisplay = pk_transtypeDisplayArray[_index]
|
||||
|
||||
formVals.pk_org.value = pk_orgVal
|
||||
formVals.pk_org.display = pk_orgDisplay
|
||||
formVals.pk_transtype.value = pk_transtypeVal
|
||||
formVals.pk_transtype.display = pk_transtypeDisplay
|
||||
|
||||
this.props.editTable.addRow('ssctp_detailopen', 0, false, formVals)
|
||||
}
|
||||
}
|
||||
|
||||
onHide('save')
|
||||
saveBtnClick()
|
||||
}
|
||||
|
||||
// 拷贝行数据
|
||||
copyFormVals = (data) => {
|
||||
const values = {}
|
||||
for (let attr in data) {
|
||||
values[attr] = {
|
||||
value: data[attr].value,
|
||||
display: data[attr].display,
|
||||
}
|
||||
}
|
||||
return values
|
||||
}
|
||||
|
||||
render() {
|
||||
const {
|
||||
props: {
|
||||
showModal,
|
||||
multiLang,
|
||||
onHide,
|
||||
form: { createForm, },
|
||||
},
|
||||
state: {},
|
||||
onEnter,
|
||||
onButtonClick,
|
||||
} = this
|
||||
|
||||
return (
|
||||
<NCModal
|
||||
fieldid="BatchAddModal"
|
||||
show={showModal}
|
||||
onHide={() => onHide('cancel')}
|
||||
onEnter={onEnter}
|
||||
size='lg'
|
||||
>
|
||||
<NCModal.Header closeButton={true}>
|
||||
<NCModal.Title>{multiLang['701010DOOROAD-020']}</NCModal.Title>
|
||||
</NCModal.Header>
|
||||
<NCModal.Body>
|
||||
{createForm('ssctp_detailopen_form', {
|
||||
isNoStandard: true,
|
||||
})}
|
||||
</NCModal.Body>
|
||||
<NCModal.Footer>
|
||||
<NCButton
|
||||
colors='primary'
|
||||
fieldid='batch-save'
|
||||
onClick={() => onButtonClick(this.props, 'batch_save')}
|
||||
>{multiLang['701010DOOROAD-006']}</NCButton>
|
||||
<NCButton
|
||||
fieldid='batch-cancel'
|
||||
onClick={() => onButtonClick(this.props, 'batch_cancel')}
|
||||
>{multiLang['701010DOOROAD-007']}</NCButton>
|
||||
</NCModal.Footer>
|
||||
</NCModal>
|
||||
)
|
||||
}
|
||||
}
|
||||
/*+YfJSE2wVV4tdUzmsv455q3iGlXZUI2mv/4od/TyZds=*/
|
|
@ -0,0 +1,79 @@
|
|||
/*3mS3VmANLuMaTtASFDOxHvWNecZeEeby5t7o9BNao9s=*/
|
||||
import { requestPromise, /* setStatePromise ,*/ } from 'ssccommon/utils/asyncFunctions.js';
|
||||
|
||||
import {
|
||||
toast,
|
||||
} from 'nc-lightapp-front';
|
||||
|
||||
/**
|
||||
* @desc 查询
|
||||
* @method asyncQry
|
||||
*/
|
||||
async function asyncQry() {
|
||||
try {
|
||||
const result = await requestPromise({
|
||||
url: `/nccloud/ssctp/dooroad/DROpenQueryAction.do`,
|
||||
data: {},
|
||||
});
|
||||
return result
|
||||
} catch (e) {
|
||||
toast({ title: e.message, duration: 5, color: 'danger', })
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* @desc 保存
|
||||
* @method asyncSave
|
||||
*/
|
||||
async function asyncSave(data) {
|
||||
try {
|
||||
const result = await requestPromise({
|
||||
url: `/nccloud/ssctp/dooroad/DROpenSaveAction.do`,
|
||||
data,
|
||||
hasErrCallBack: true,
|
||||
});
|
||||
return result
|
||||
} catch (e) {
|
||||
toast({ title: e.message, duration: 5, color: 'danger', })
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* @desc 删除
|
||||
* @method asyncDel
|
||||
*/
|
||||
async function asyncDel(data) {
|
||||
try {
|
||||
const result = await requestPromise({
|
||||
url: `/nccloud/ssctp/dooroad/DROpenDelAction.do`,
|
||||
data,
|
||||
});
|
||||
return result
|
||||
} catch (e) {
|
||||
toast({ title: e.message, duration: 5, color: 'danger', })
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* @desc 编辑后事件查询
|
||||
* @method asyncOtherSelect
|
||||
*/
|
||||
async function asyncOtherSelect(data) {
|
||||
try {
|
||||
const result = await requestPromise({
|
||||
url: `/nccloud/ssctp/dooroad/DROtherSelectOtsAction.do`,
|
||||
data,
|
||||
});
|
||||
return result
|
||||
} catch (e) {
|
||||
toast({ title: e.message, duration: 5, color: 'danger', })
|
||||
}
|
||||
}
|
||||
|
||||
export {
|
||||
asyncQry,
|
||||
asyncSave,
|
||||
asyncDel,
|
||||
asyncOtherSelect,
|
||||
}
|
||||
/*3mS3VmANLuMaTtASFDOxHvWNecZeEeby5t7o9BNao9s=*/
|
|
@ -0,0 +1,40 @@
|
|||
/*pmFWCFu5nhKkBzYmrkBaka23LzwyeVw+yP0Qu3SWeVg=*/
|
||||
import {
|
||||
getMultiLang,
|
||||
} from 'nc-lightapp-front';
|
||||
|
||||
export default function ({
|
||||
createUIDom, meta: { setMeta },
|
||||
button: { setButtons, setButtonDisabled, },
|
||||
}) {
|
||||
const that = this
|
||||
createUIDom({}, function({ template, button }) {
|
||||
getMultiLang({moduleId: 7010, domainName: 'ssctp', currentLocale: 'zh-CN', callback: multiLang => {
|
||||
// 列表参照过滤
|
||||
template.ssctp_detailopen.items.forEach((item, idx, items) => {
|
||||
if (item.attrcode === 'pk_transtype') {
|
||||
item.queryCondition = () => ({
|
||||
GridRefActionExt: 'nccloud.web.ssctp.sscbd.ref.sqlbuilder.TranstypeForDRRefBuilder',
|
||||
})
|
||||
}
|
||||
})
|
||||
|
||||
// 批量新增参照过滤
|
||||
template.ssctp_detailopen_form.items.forEach((item, idx, items) => {
|
||||
if (item.attrcode === 'pk_transtype') {
|
||||
item.queryCondition = () => ({
|
||||
GridRefActionExt: 'nccloud.web.ssctp.sscbd.ref.sqlbuilder.TranstypeForDRRefBuilder',
|
||||
})
|
||||
}
|
||||
})
|
||||
|
||||
setMeta(template);
|
||||
setButtons(button);
|
||||
that.setState({multiLang})
|
||||
that.changePageStatus('browse')
|
||||
that.tableDataQry()
|
||||
setButtonDisabled({Delete: true})
|
||||
}})
|
||||
});
|
||||
}
|
||||
/*pmFWCFu5nhKkBzYmrkBaka23LzwyeVw+yP0Qu3SWeVg=*/
|
|
@ -0,0 +1,251 @@
|
|||
/*FDKFkr+TYgGKTTudQv9suM5TObrl0kaUnLjqLMCkTsQ=*/
|
||||
import React, { Component } from 'react';
|
||||
import ReactDOM from 'react-dom';
|
||||
import { createPage, promptBox, toast, } from "nc-lightapp-front";
|
||||
import initTemplate from "./events/initTemplate.js";
|
||||
import BillListStyle from 'ssccommon/components/bill-list';
|
||||
import {
|
||||
asyncQry, asyncSave, asyncDel, asyncOtherSelect,
|
||||
} from './events/async.js'
|
||||
import BatchAddModal from './BatchAdd.js'
|
||||
|
||||
class DocOpen extends Component {
|
||||
constructor(props) {
|
||||
super(props);
|
||||
this.state = {
|
||||
multiLang: {}, // 多语
|
||||
showBatchAddModal: false, // 批量添加
|
||||
pageStatus: 'browse', // 页面状态
|
||||
};
|
||||
|
||||
initTemplate.call(this, props);
|
||||
}
|
||||
|
||||
// 头部按钮组事件
|
||||
headerBtnEventDistribute = () => ({
|
||||
Add: () => this.addBtnClick(),
|
||||
Edit: () => this.editBtnClick(),
|
||||
Delete: () => this.deleteBtnClick(),
|
||||
Save: () => this.saveBtnClick(),
|
||||
Cancel: () => this.cancelBtnClick(),
|
||||
BatchAdd: () => this.setState({showBatchAddModal: true}),
|
||||
})
|
||||
|
||||
// 改变页面状态 浏览/编辑
|
||||
changePageStatus = statu => {
|
||||
const {
|
||||
editTable: { setStatus, },
|
||||
button: { setButtonVisible, setMainButton, },
|
||||
} = this.props
|
||||
setStatus('ssctp_detailopen', statu)
|
||||
setButtonVisible({
|
||||
Add: true,
|
||||
BatchAdd: statu === 'browse',
|
||||
Edit: statu === 'browse',
|
||||
Delete: true,
|
||||
Save: statu === 'edit',
|
||||
Cancel: statu === 'edit',
|
||||
})
|
||||
this.setState({pageStatus: statu})
|
||||
setMainButton('Add', statu === 'browse')
|
||||
}
|
||||
|
||||
componentDidMount() {
|
||||
// 浏览器原生提示
|
||||
window.onbeforeunload = () => {
|
||||
if (this.state.pageStatus === 'edit') return ''
|
||||
}
|
||||
}
|
||||
|
||||
// 列表数据查询
|
||||
tableDataQry = async (isRefresh = false) => {
|
||||
const response = await asyncQry()
|
||||
const {success, data} = response
|
||||
if (!success) return
|
||||
this.props.editTable.setTableData('ssctp_detailopen', data ? data.ssctp_detailopen : {rows: []})
|
||||
if (isRefresh) {
|
||||
toast({title: this.state.multiLang['701010DOOROAD-022'], duration: 5})
|
||||
}
|
||||
}
|
||||
|
||||
// 刷新
|
||||
refreshButtonEvent = () => {
|
||||
this.tableDataQry(true)
|
||||
}
|
||||
|
||||
//增加
|
||||
addBtnClick = () => {
|
||||
const rows = this.props.editTable.getAllData('ssctp_detailopen').rows
|
||||
this.props.editTable.addRow('ssctp_detailopen', rows.length, true, {})
|
||||
this.changePageStatus('edit')
|
||||
}
|
||||
|
||||
// 修改
|
||||
editBtnClick = () => {
|
||||
this.changePageStatus('edit')
|
||||
}
|
||||
|
||||
// 删除提示
|
||||
deleteBtnClick = () => {
|
||||
if (this.state.pageStatus === 'browse') {
|
||||
const checkedRows = this.props.editTable.getCheckedRows('ssctp_detailopen')
|
||||
if (!checkedRows.length) return
|
||||
return promptBox({
|
||||
color: 'warning',
|
||||
title: this.state.multiLang['701010DOOROAD-003'],
|
||||
content: this.state.multiLang['701010DOOROAD-018'],
|
||||
noFooter: false,
|
||||
noCancelBtn: false,
|
||||
beSureBtnClick: this.sureDel,
|
||||
cancelBtnClick: () => {},
|
||||
closeByClickBackDrop: true,
|
||||
})
|
||||
} else {
|
||||
const checkedIndex = this.props.editTable.getCheckedRows('ssctp_detailopen').map(row => row.index)
|
||||
if (!checkedIndex.length) return
|
||||
this.props.editTable.deleteTableRowsByIndex('ssctp_detailopen', checkedIndex)
|
||||
}
|
||||
}
|
||||
|
||||
//确认删除
|
||||
sureDel = async () => {
|
||||
const {
|
||||
deleteTableRowsByIndex, getCheckedRows, getAllData, setTableData,
|
||||
} = this.props.editTable
|
||||
|
||||
const toDelIdxs = getCheckedRows('ssctp_detailopen').map(row => row.index)
|
||||
deleteTableRowsByIndex('ssctp_detailopen', toDelIdxs)
|
||||
|
||||
const response = await asyncDel({ssctp_detailopen: getAllData('ssctp_detailopen')})
|
||||
const {success, data} = response
|
||||
if (!success || !data) return
|
||||
|
||||
setTableData('ssctp_detailopen', data.ssctp_detailopen)
|
||||
toast({ title: this.state.multiLang['701010DOOROAD-017'], duration: 5})
|
||||
}
|
||||
|
||||
// 保存
|
||||
saveBtnClick = async () => {
|
||||
const {
|
||||
editTable: { filterEmptyRows, checkRequired, getAllData, setTableData},
|
||||
} = this.props
|
||||
filterEmptyRows('ssctp_detailopen', [])
|
||||
const tableData = getAllData('ssctp_detailopen')
|
||||
if (!checkRequired('ssctp_detailopen', tableData.rows)) return
|
||||
const response = await asyncSave({ssctp_detailopen: tableData})
|
||||
if (!response) return
|
||||
const {success, data} = response
|
||||
if (!success) return
|
||||
setTableData('ssctp_detailopen', data ? data.ssctp_detailopen : {rows: []})
|
||||
this.changePageStatus('browse')
|
||||
toast({ title: this.state.multiLang['701010DOOROAD-016'], duration: 5})
|
||||
}
|
||||
|
||||
// 取消
|
||||
cancelBtnClick = () => {
|
||||
this.changePageStatus('browse')
|
||||
this.tableDataQry()
|
||||
}
|
||||
|
||||
// 列表编辑后事件
|
||||
onAfterEvent = async (props, areaId, key, currentValue, changedrows, index, row, ...others) => {
|
||||
if (key === 'pk_transtype') {
|
||||
const transtype_code = currentValue.refcode || ''
|
||||
props.editTable.setValByKeyAndIndex(areaId, index, 'transtype_code', {value: transtype_code, display: transtype_code})
|
||||
}
|
||||
|
||||
// if (key !== 'pk_ots') {
|
||||
// return true
|
||||
// }
|
||||
// const {
|
||||
// editTable: { setValByKeyAndIndex, },
|
||||
// } = props
|
||||
// if (!currentValue.refpk) {
|
||||
// setValByKeyAndIndex(areaId, index, 'url', {value: '', display: ''})
|
||||
// return true
|
||||
// }
|
||||
// const response = await asyncOtherSelect({pk_ots: currentValue.refpk})
|
||||
// const {success, data} = response
|
||||
// if (!success || !data) return true
|
||||
// setValByKeyAndIndex(areaId, index, 'url', {value: `${data.ip}:${data.port}`, display: `${data.ip}:${data.port}`})
|
||||
}
|
||||
|
||||
// 列表选中变更事件
|
||||
selectedChange = (props, areaId, newVal, oldVal) => {
|
||||
this.props.button.setButtonDisabled({Delete: !newVal})
|
||||
}
|
||||
|
||||
render() {
|
||||
const {
|
||||
state: {
|
||||
multiLang,
|
||||
showBatchAddModal,
|
||||
pageStatus,
|
||||
},
|
||||
props: {
|
||||
getSearchParam,
|
||||
editTable: { createEditTable, },
|
||||
},
|
||||
headerBtnEventDistribute,
|
||||
onAfterEvent,
|
||||
selectedChange,
|
||||
changePageStatus,
|
||||
refreshButtonEvent,
|
||||
saveBtnClick,
|
||||
} = this
|
||||
|
||||
return (
|
||||
<BillListStyle {...this.props}>
|
||||
|
||||
<BillListStyle.HeadArea
|
||||
title={getSearchParam('n') || multiLang['701010DOOROAD-008']}
|
||||
refreshButtonEvent={refreshButtonEvent}
|
||||
status={pageStatus}
|
||||
>
|
||||
{/* 头部按钮组 */}
|
||||
<BillListStyle.ButtonGroup
|
||||
area={'head_btnArea'}
|
||||
buttonEvent={headerBtnEventDistribute}
|
||||
/>
|
||||
</BillListStyle.HeadArea>
|
||||
|
||||
<BillListStyle.BodyArea>
|
||||
{/* 列表 */}
|
||||
{createEditTable(
|
||||
'ssctp_detailopen',
|
||||
{
|
||||
showIndex: true,
|
||||
showCheck: true,
|
||||
onAfterEvent,
|
||||
adaptionHeight: true,
|
||||
isAddRow: true,
|
||||
selectedChange,
|
||||
},
|
||||
)}
|
||||
</BillListStyle.BodyArea>
|
||||
|
||||
<BatchAddModal
|
||||
showModal={showBatchAddModal}
|
||||
onHide={action => {
|
||||
this.setState({showBatchAddModal: false})
|
||||
if (action !== 'save') {
|
||||
this.changePageStatus('browse')
|
||||
} else {
|
||||
this.changePageStatus('edit')
|
||||
}
|
||||
}}
|
||||
setPageEdit={() => changePageStatus('edit')}
|
||||
saveBtnClick={saveBtnClick}
|
||||
{...this.state}
|
||||
{...this.props}
|
||||
/>
|
||||
|
||||
</BillListStyle>
|
||||
);
|
||||
}
|
||||
}
|
||||
|
||||
DocOpen = createPage({ mutiLangCode: '7010' })(DocOpen);
|
||||
ReactDOM.render(<DocOpen/>, document.querySelector("#app"));
|
||||
|
||||
/*FDKFkr+TYgGKTTudQv9suM5TObrl0kaUnLjqLMCkTsQ=*/
|
|
@ -0,0 +1,121 @@
|
|||
/*+YfJSE2wVV4tdUzmsv455q3iGlXZUI2mv/4od/TyZds=*/
|
||||
import React, { Component, } from 'react';
|
||||
import { base, } from 'nc-lightapp-front';
|
||||
const { NCModal, NCButton } = base;
|
||||
|
||||
export default class BatchAddModal extends Component {
|
||||
constructor(props) {
|
||||
super(props)
|
||||
this.state = {}
|
||||
}
|
||||
|
||||
onEnter = () => {
|
||||
this.props.form.setFormStatus('ssctp_eventlistener_form', 'edit')
|
||||
this.props.form.EmptyAllFormValue('ssctp_eventlistener_form')
|
||||
}
|
||||
|
||||
onButtonClick = (props, key) => {
|
||||
const {
|
||||
onHide,
|
||||
} = props
|
||||
if (key === 'batch_save') { // 保存 拆行
|
||||
this.batchSave()
|
||||
} else if (key === 'batch_cancel') { // 取消
|
||||
onHide('cancel')
|
||||
}
|
||||
}
|
||||
|
||||
batchSave = () => {
|
||||
const {
|
||||
form: { getAllFormValue, isCheckNow, },
|
||||
saveBtnClick, onHide,
|
||||
} = this.props
|
||||
if (!isCheckNow('ssctp_eventlistener_form')) return // 必输校验
|
||||
|
||||
const values = getAllFormValue('ssctp_eventlistener_form').rows[0].values
|
||||
const formVals = this.copyFormVals(values)
|
||||
const {
|
||||
pk_org, pk_transtype,
|
||||
} = values
|
||||
|
||||
const pk_orgArray = pk_org.value.split(','),
|
||||
pk_transtypeArray = pk_transtype.value.split(','),
|
||||
pk_orgDisplayArray = pk_org.display.split(','),
|
||||
pk_transtypeDisplayArray = pk_transtype.display.split(',')
|
||||
let index = -1
|
||||
while(++index < pk_orgArray.length) {
|
||||
const pk_orgVal = pk_orgArray[index], pk_orgDisplay = pk_orgDisplayArray[index]
|
||||
let _index = -1
|
||||
while(++_index < pk_transtypeArray.length) {
|
||||
const pk_transtypeVal = pk_transtypeArray[_index], pk_transtypeDisplay = pk_transtypeDisplayArray[_index]
|
||||
|
||||
formVals.pk_org.value = pk_orgVal
|
||||
formVals.pk_org.display = pk_orgDisplay
|
||||
formVals.pk_transtype.value = pk_transtypeVal
|
||||
formVals.pk_transtype.display = pk_transtypeDisplay
|
||||
|
||||
this.props.editTable.addRow('ssctp_eventlistener_list', 0, false, formVals)
|
||||
}
|
||||
}
|
||||
|
||||
onHide('save')
|
||||
saveBtnClick()
|
||||
}
|
||||
|
||||
// 拷贝行数据
|
||||
copyFormVals = (data) => {
|
||||
const values = {}
|
||||
for (let attr in data) {
|
||||
values[attr] = {
|
||||
value: data[attr].value,
|
||||
display: data[attr].display,
|
||||
}
|
||||
}
|
||||
return values
|
||||
}
|
||||
|
||||
render() {
|
||||
const {
|
||||
props: {
|
||||
show,
|
||||
multiLang,
|
||||
onHide,
|
||||
form: { createForm, },
|
||||
},
|
||||
state: {},
|
||||
onEnter,
|
||||
onButtonClick,
|
||||
} = this
|
||||
|
||||
return (
|
||||
<NCModal
|
||||
fieldid="BatchAddModalImage"
|
||||
show={show}
|
||||
onHide={() => onHide('cancel')}
|
||||
onEnter={onEnter}
|
||||
size='lg'
|
||||
>
|
||||
<NCModal.Header closeButton={true}>
|
||||
<NCModal.Title>{multiLang['701010DOOROAD-020']}</NCModal.Title>
|
||||
</NCModal.Header>
|
||||
<NCModal.Body>
|
||||
{createForm('ssctp_eventlistener_form', {
|
||||
isNoStandard: true,
|
||||
})}
|
||||
</NCModal.Body>
|
||||
<NCModal.Footer>
|
||||
<NCButton
|
||||
colors='primary'
|
||||
fieldid='batch-save'
|
||||
onClick={() => onButtonClick(this.props, 'batch_save')}
|
||||
>{multiLang['701010DOOROAD-006']}</NCButton>
|
||||
<NCButton
|
||||
fieldid='batch-cancel'
|
||||
onClick={() => onButtonClick(this.props, 'batch_cancel')}
|
||||
>{multiLang['701010DOOROAD-007']}</NCButton>
|
||||
</NCModal.Footer>
|
||||
</NCModal>
|
||||
)
|
||||
}
|
||||
}
|
||||
/*+YfJSE2wVV4tdUzmsv455q3iGlXZUI2mv/4od/TyZds=*/
|
|
@ -0,0 +1,79 @@
|
|||
/*3mS3VmANLuMaTtASFDOxHvWNecZeEeby5t7o9BNao9s=*/
|
||||
import { requestPromise, /* setStatePromise ,*/ } from 'ssccommon/utils/asyncFunctions.js';
|
||||
|
||||
import {
|
||||
toast,
|
||||
} from 'nc-lightapp-front';
|
||||
|
||||
/**
|
||||
* @desc 查询
|
||||
* @method asyncQry
|
||||
*/
|
||||
async function asyncQry() {
|
||||
try {
|
||||
const result = await requestPromise({
|
||||
url: `/nccloud/ssctp/dooroad/DREventListenerQueryAction.do`,
|
||||
data: {},
|
||||
});
|
||||
return result
|
||||
} catch (e) {
|
||||
toast({ title: e.message, duration: 5, color: 'danger', })
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* @desc 删除
|
||||
* @method asyncDel
|
||||
*/
|
||||
async function asyncDel(data) {
|
||||
try {
|
||||
const result = await requestPromise({
|
||||
url: `/nccloud/ssctp/dooroad/DREventListenerDelAction.do`,
|
||||
data,
|
||||
});
|
||||
return result
|
||||
} catch (e) {
|
||||
toast({ title: e.message, duration: 5, color: 'danger', })
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* @desc 保存
|
||||
* @method asyncSave
|
||||
*/
|
||||
async function asyncSave(data) {
|
||||
try {
|
||||
const result = await requestPromise({
|
||||
url: `/nccloud/ssctp/dooroad/DREventListenerSaveAction.do`,
|
||||
data,
|
||||
hasErrCallBack: true,
|
||||
});
|
||||
return result
|
||||
} catch (e) {
|
||||
toast({ title: e.message, duration: 5, color: 'danger', })
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* @desc 编辑后事件查询
|
||||
* @method asyncOtherSelect
|
||||
*/
|
||||
async function asyncOtherSelect(data) {
|
||||
try {
|
||||
const result = await requestPromise({
|
||||
url: `/nccloud/ssctp/dooroad/DROtherSelectOtsAction.do`,
|
||||
data,
|
||||
});
|
||||
return result
|
||||
} catch (e) {
|
||||
toast({ title: e.message, duration: 5, color: 'danger', })
|
||||
}
|
||||
}
|
||||
|
||||
export {
|
||||
asyncQry,
|
||||
asyncDel,
|
||||
asyncSave,
|
||||
asyncOtherSelect,
|
||||
}
|
||||
/*3mS3VmANLuMaTtASFDOxHvWNecZeEeby5t7o9BNao9s=*/
|
|
@ -0,0 +1,60 @@
|
|||
/*pmFWCFu5nhKkBzYmrkBaka23LzwyeVw+yP0Qu3SWeVg=*/
|
||||
import {
|
||||
getMultiLang,
|
||||
} from 'nc-lightapp-front';
|
||||
|
||||
export default function ({
|
||||
createUIDom, meta: { setMeta },
|
||||
button: { setButtons, createOprationButton, setButtonDisabled,},
|
||||
}) {
|
||||
const that = this
|
||||
createUIDom({}, function({ template, button }) {
|
||||
getMultiLang({moduleId: 7010, domainName: 'ssctp', currentLocale: 'zh-CN', callback: multiLang => {
|
||||
// 列表参照过滤
|
||||
template.ssctp_eventlistener_list.items.forEach((item, idx, items) => {
|
||||
if (item.attrcode === 'pk_transtype') {
|
||||
item.queryCondition = () => ({
|
||||
GridRefActionExt: 'nccloud.web.ssctp.sscbd.ref.sqlbuilder.TranstypeForDRRefBuilder',
|
||||
})
|
||||
}
|
||||
})
|
||||
|
||||
// 批量新增参照过滤
|
||||
template.ssctp_eventlistener_form.items.forEach((item, idx, items) => {
|
||||
if (item.attrcode === 'pk_transtype') {
|
||||
item.queryCondition = () => ({
|
||||
GridRefActionExt: 'nccloud.web.ssctp.sscbd.ref.sqlbuilder.TranstypeForDRRefBuilder',
|
||||
})
|
||||
}
|
||||
})
|
||||
|
||||
// // 添加操作列
|
||||
// template.ssctp_eventlistener_list.items.push({
|
||||
// label: multiLang['701010DOOROAD-013'],
|
||||
// attrcode: "opr",
|
||||
// itemtype: "customer",
|
||||
// visible: true,
|
||||
// width: "100px",
|
||||
// fixed: "right",
|
||||
// render: (node, values, idx) => {
|
||||
// return createOprationButton(['Param'], {
|
||||
// area: 'list_btnArea',
|
||||
// onButtonClick: (props, key) => {
|
||||
// that.showParamModal(values, idx)
|
||||
// }
|
||||
// });
|
||||
// }
|
||||
// })
|
||||
|
||||
setMeta(template);
|
||||
setButtons(button);
|
||||
that.setState({multiLang})
|
||||
|
||||
that.changePageStatu('browse')
|
||||
setButtonDisabled({Delete: true})
|
||||
that.listQry()
|
||||
|
||||
}})
|
||||
});
|
||||
}
|
||||
/*pmFWCFu5nhKkBzYmrkBaka23LzwyeVw+yP0Qu3SWeVg=*/
|
|
@ -0,0 +1,269 @@
|
|||
/*FDKFkr+TYgGKTTudQv9suM5TObrl0kaUnLjqLMCkTsQ=*/
|
||||
import React, { Component } from 'react';
|
||||
import ReactDOM from 'react-dom';
|
||||
import { createPage, promptBox, toast, } from "nc-lightapp-front";
|
||||
import initTemplate from "./events/initTemplate.js";
|
||||
import BillListStyle from 'ssccommon/components/bill-list';
|
||||
import EventRegisModal from './modal.js'
|
||||
import {
|
||||
asyncQry,
|
||||
asyncDel,
|
||||
asyncSave,
|
||||
asyncOtherSelect,
|
||||
} from './events/async.js';
|
||||
import BatchAddModal from './BatchAdd.js'
|
||||
|
||||
class EventRegis extends Component {
|
||||
constructor(props) {
|
||||
super(props);
|
||||
this.state = {
|
||||
showModal: false, // 显示弹窗
|
||||
multiLang: {}, // 多语
|
||||
showBatchAddModal: false, // 批量添加
|
||||
pageStatus: 'browse', // 页面状态
|
||||
};
|
||||
|
||||
initTemplate.call(this, props);
|
||||
}
|
||||
|
||||
componentDidMount() {
|
||||
// 浏览器原生提示
|
||||
window.onbeforeunload = () => {
|
||||
if (this.state.pageStatus === 'edit') return ''
|
||||
}
|
||||
}
|
||||
|
||||
// 头部按钮组事件
|
||||
headerBtnEventDistribute = () => ({
|
||||
Add: () => this.addBtnClick(),
|
||||
Edit: () => this.editBtnClick(),
|
||||
Delete: () => this.deleteBtnClick(),
|
||||
Save: () => this.saveBtnClick(),
|
||||
Cancel: () => this.cancelBtnClick(),
|
||||
BatchAdd: () => this.setState({showBatchAddModal: true}),
|
||||
})
|
||||
|
||||
// 改变页面状态
|
||||
changePageStatu = status => {
|
||||
this.props.button.setButtonVisible({
|
||||
Add: true,
|
||||
Edit: status === 'browse',
|
||||
Delete: true,
|
||||
Save: status === 'edit',
|
||||
Cancel: status === 'edit',
|
||||
BatchAdd: status === 'browse',
|
||||
})
|
||||
this.props.editTable.setStatus('ssctp_eventlistener_list', status)
|
||||
this.setState({pageStatus: status})
|
||||
this.props.button.setMainButton('Add', status === 'browse')
|
||||
}
|
||||
|
||||
// 列表查询
|
||||
listQry = async (isRefresh = false) => {
|
||||
const response = await asyncQry()
|
||||
const {success, data} = response
|
||||
if (!success) return
|
||||
this.props.editTable.setTableData('ssctp_eventlistener_list', data ? data.ssctp_eventlistener_list : {rows: []})
|
||||
if (isRefresh) {
|
||||
toast({title: this.state.multiLang['701010DOOROAD-022'], duration: 5})
|
||||
}
|
||||
}
|
||||
|
||||
// 显示弹窗
|
||||
showParamModal = (row, index) => {
|
||||
this.setState({showModal: true})
|
||||
}
|
||||
|
||||
// 隐藏弹窗
|
||||
onHide = () => {
|
||||
this.setState({showModal: false})
|
||||
}
|
||||
|
||||
// 新增
|
||||
addBtnClick = () => {
|
||||
const rows = this.props.editTable.getAllData('ssctp_eventlistener_list').rows
|
||||
this.props.editTable.addRow('ssctp_eventlistener_list', rows.length, true, {})
|
||||
this.changePageStatu('edit')
|
||||
}
|
||||
|
||||
// 修改
|
||||
editBtnClick = () => {
|
||||
this.changePageStatu('edit')
|
||||
}
|
||||
|
||||
// 取消
|
||||
cancelBtnClick = () => {
|
||||
this.listQry()
|
||||
this.changePageStatu('browse')
|
||||
}
|
||||
|
||||
// 保存
|
||||
saveBtnClick = async () => {
|
||||
const {
|
||||
editTable: { filterEmptyRows, checkRequired, getAllData, setTableData},
|
||||
} = this.props
|
||||
filterEmptyRows('ssctp_eventlistener_list', [])
|
||||
const tableData = getAllData('ssctp_eventlistener_list')
|
||||
if (!checkRequired('ssctp_eventlistener_list', tableData.rows)) return
|
||||
const response = await asyncSave({ssctp_eventlistener_list: tableData})
|
||||
if (!response) return
|
||||
const {success, data} = response
|
||||
if (!success) return
|
||||
setTableData('ssctp_eventlistener_list', data ? data.ssctp_eventlistener_list : {})
|
||||
this.changePageStatu('browse')
|
||||
toast({ title: this.state.multiLang['701010DOOROAD-016'], duration: 5})
|
||||
}
|
||||
|
||||
// 删除提示
|
||||
deleteBtnClick = () => {
|
||||
if (this.state.pageStatus === 'browse') {
|
||||
const checkedRows = this.props.editTable.getCheckedRows('ssctp_eventlistener_list')
|
||||
if (!checkedRows.length) return
|
||||
return promptBox({
|
||||
color: 'warning',
|
||||
title: this.state.multiLang['701010DOOROAD-003'],
|
||||
content: this.state.multiLang['701010DOOROAD-018'],
|
||||
noFooter: false,
|
||||
noCancelBtn: false,
|
||||
beSureBtnClick: this.sureDel,
|
||||
cancelBtnClick: () => {},
|
||||
closeByClickBackDrop: true,
|
||||
})
|
||||
} else {
|
||||
const checkedIndex = this.props.editTable.getCheckedRows('ssctp_eventlistener_list').map(row => row.index)
|
||||
if (!checkedIndex.length) return
|
||||
this.props.editTable.deleteTableRowsByIndex('ssctp_eventlistener_list', checkedIndex)
|
||||
}
|
||||
}
|
||||
|
||||
// 确定删除
|
||||
sureDel = async () => {
|
||||
const {
|
||||
deleteTableRowsByIndex, getCheckedRows, getAllData, setTableData,
|
||||
} = this.props.editTable
|
||||
|
||||
const toDelIdxs = getCheckedRows('ssctp_eventlistener_list').map(row => row.index)
|
||||
deleteTableRowsByIndex('ssctp_eventlistener_list', toDelIdxs)
|
||||
|
||||
const response = await asyncDel({ssctp_eventlistener_list: getAllData('ssctp_eventlistener_list')})
|
||||
const {success, data} = response
|
||||
if (!success || !data) return
|
||||
|
||||
setTableData('ssctp_eventlistener_list', data.ssctp_eventlistener_list)
|
||||
toast({ title: this.state.multiLang['701010DOOROAD-017'], duration: 5})
|
||||
}
|
||||
|
||||
// 列表编辑后事件
|
||||
onAfterEvent = async (props, areaId, key, currentValue, changedrows, index, row, ...others) => {
|
||||
if (key === 'pk_transtype') {
|
||||
const transtype_code = currentValue.refcode || ''
|
||||
props.editTable.setValByKeyAndIndex(areaId, index, 'transtype_code', {value: transtype_code, display: transtype_code})
|
||||
}
|
||||
|
||||
// if (key !== 'pk_ots') {
|
||||
// return true
|
||||
// }
|
||||
// const {
|
||||
// editTable: { setValByKeyAndIndex, },
|
||||
// } = props
|
||||
// if (!currentValue.refpk) {
|
||||
// setValByKeyAndIndex(areaId, index, 'url', {value: '', display: ''})
|
||||
// return true
|
||||
// }
|
||||
// const response = await asyncOtherSelect({pk_ots: currentValue.refpk})
|
||||
// const {success, data} = response
|
||||
// if (!success || !data) return true
|
||||
// setValByKeyAndIndex(areaId, index, 'url', {value: `${data.ip}:${data.port}`, display: `${data.ip}:${data.port}`})
|
||||
}
|
||||
|
||||
// 列表选中变更事件
|
||||
selectedChange = (props, areaId, newVal, oldVal) => {
|
||||
this.props.button.setButtonDisabled({Delete: !newVal})
|
||||
}
|
||||
|
||||
// 刷新
|
||||
refreshButtonEvent = () => {
|
||||
this.listQry(true)
|
||||
}
|
||||
|
||||
render() {
|
||||
const {
|
||||
state: {
|
||||
multiLang,
|
||||
showBatchAddModal,
|
||||
pageStatus,
|
||||
},
|
||||
props: {
|
||||
getSearchParam,
|
||||
editTable: { createEditTable, },
|
||||
},
|
||||
headerBtnEventDistribute,
|
||||
onHide,
|
||||
onAfterEvent,
|
||||
selectedChange,
|
||||
changePageStatu,
|
||||
refreshButtonEvent,
|
||||
saveBtnClick,
|
||||
} = this
|
||||
|
||||
return (
|
||||
<BillListStyle {...this.props}>
|
||||
|
||||
<BillListStyle.HeadArea
|
||||
title={getSearchParam('n') || multiLang['701010DOOROAD-015']}
|
||||
refreshButtonEvent={refreshButtonEvent}
|
||||
status={pageStatus}
|
||||
>
|
||||
{/* 头部按钮组 */}
|
||||
<BillListStyle.ButtonGroup
|
||||
area={'head_btnArea'}
|
||||
buttonEvent={headerBtnEventDistribute}
|
||||
/>
|
||||
</BillListStyle.HeadArea>
|
||||
|
||||
<BillListStyle.BodyArea>
|
||||
{/* 列表 */}
|
||||
{createEditTable(
|
||||
'ssctp_eventlistener_list',
|
||||
{
|
||||
showIndex: true,
|
||||
showCheck: true,
|
||||
isAddRow: true,
|
||||
onAfterEvent,
|
||||
selectedChange,
|
||||
adaptionHeight: true,
|
||||
},
|
||||
)}
|
||||
</BillListStyle.BodyArea>
|
||||
|
||||
<EventRegisModal
|
||||
onHide={onHide}
|
||||
{...this.state}
|
||||
{...this.props}
|
||||
/>
|
||||
|
||||
<BatchAddModal
|
||||
show={showBatchAddModal}
|
||||
onHide={action => {
|
||||
this.setState({showBatchAddModal: false})
|
||||
if (action === 'save') {
|
||||
changePageStatu('edit')
|
||||
} else {
|
||||
changePageStatu('browse')
|
||||
}
|
||||
}}
|
||||
setPageEdit={() => changePageStatu('edit')}
|
||||
saveBtnClick={saveBtnClick}
|
||||
{...this.state}
|
||||
{...this.props}
|
||||
/>
|
||||
|
||||
</BillListStyle>
|
||||
);
|
||||
}
|
||||
}
|
||||
|
||||
EventRegis = createPage({ mutiLangCode: '7010' })(EventRegis);
|
||||
ReactDOM.render(<EventRegis/>, document.querySelector("#app"));
|
||||
|
||||
/*FDKFkr+TYgGKTTudQv9suM5TObrl0kaUnLjqLMCkTsQ=*/
|
|
@ -0,0 +1,51 @@
|
|||
/*8o+P8J7kLOMsCOkr3TeeGIRKKnnuiYLht9+O74e2aAU=*/
|
||||
import React, { Component, } from 'react';
|
||||
import { base, } from 'nc-lightapp-front';
|
||||
const { NCModal, NCButton,} = base;
|
||||
|
||||
export default class EventRegisModal extends Component {
|
||||
constructor(props) {
|
||||
super(props)
|
||||
this.state = {}
|
||||
}
|
||||
|
||||
render() {
|
||||
const {
|
||||
props: {
|
||||
showModal,
|
||||
multiLang,
|
||||
onHide,
|
||||
editTable: { createEditTable, },
|
||||
button: { createButtonApp, },
|
||||
},
|
||||
state: {},
|
||||
} = this
|
||||
|
||||
return (
|
||||
<NCModal
|
||||
fieldid="EventRegisModal"
|
||||
show={showModal}
|
||||
onHide={onHide}
|
||||
size='lg'
|
||||
>
|
||||
<NCModal.Header closeButton={true}>
|
||||
<NCModal.Title>{multiLang['701010DOOROAD-010']}</NCModal.Title>
|
||||
</NCModal.Header>
|
||||
<NCModal.Body>
|
||||
{createEditTable('ssctp_eventlistener_list', {
|
||||
showIndex: true,
|
||||
showCheck: true,
|
||||
isAddRow: true,
|
||||
})}
|
||||
</NCModal.Body>
|
||||
<NCModal.Footer>
|
||||
{createButtonApp({
|
||||
area: 'form_btnArea',
|
||||
onButtonClick: (props, key) => {},
|
||||
})}
|
||||
</NCModal.Footer>
|
||||
</NCModal>
|
||||
)
|
||||
}
|
||||
}
|
||||
/*8o+P8J7kLOMsCOkr3TeeGIRKKnnuiYLht9+O74e2aAU=*/
|
|
@ -0,0 +1,121 @@
|
|||
/*+YfJSE2wVV4tdUzmsv455q3iGlXZUI2mv/4od/TyZds=*/
|
||||
import React, { Component, } from 'react';
|
||||
import { base, } from 'nc-lightapp-front';
|
||||
const { NCModal, NCButton } = base;
|
||||
|
||||
export default class BatchAddModal extends Component {
|
||||
constructor(props) {
|
||||
super(props)
|
||||
this.state = {}
|
||||
}
|
||||
|
||||
onEnter = () => {
|
||||
this.props.form.setFormStatus('ssctp_imagshow_form', 'edit')
|
||||
this.props.form.EmptyAllFormValue('ssctp_imagshow_form')
|
||||
}
|
||||
|
||||
onButtonClick = (props, key) => {
|
||||
const {
|
||||
onHide,
|
||||
} = props
|
||||
if (key === 'batch_save') { // 保存 拆行
|
||||
this.batchSave()
|
||||
} else if (key === 'batch_cancel') { // 取消
|
||||
onHide('cancel')
|
||||
}
|
||||
}
|
||||
|
||||
batchSave = () => {
|
||||
const {
|
||||
form: { getAllFormValue, isCheckNow, },
|
||||
headSaveHandle, onHide,
|
||||
} = this.props
|
||||
if (!isCheckNow('ssctp_imagshow_form')) return // 必输校验
|
||||
|
||||
const values = getAllFormValue('ssctp_imagshow_form').rows[0].values
|
||||
const formVals = this.copyFormVals(values)
|
||||
const {
|
||||
pk_org, pk_transtype,
|
||||
} = values
|
||||
|
||||
const pk_orgArray = pk_org.value.split(','),
|
||||
pk_transtypeArray = pk_transtype.value.split(','),
|
||||
pk_orgDisplayArray = pk_org.display.split(','),
|
||||
pk_transtypeDisplayArray = pk_transtype.display.split(',')
|
||||
let index = -1
|
||||
while(++index < pk_orgArray.length) {
|
||||
const pk_orgVal = pk_orgArray[index], pk_orgDisplay = pk_orgDisplayArray[index]
|
||||
let _index = -1
|
||||
while(++_index < pk_transtypeArray.length) {
|
||||
const pk_transtypeVal = pk_transtypeArray[_index], pk_transtypeDisplay = pk_transtypeDisplayArray[_index]
|
||||
|
||||
formVals.pk_org.value = pk_orgVal
|
||||
formVals.pk_org.display = pk_orgDisplay
|
||||
formVals.pk_transtype.value = pk_transtypeVal
|
||||
formVals.pk_transtype.display = pk_transtypeDisplay
|
||||
|
||||
this.props.editTable.addRow('ssctp_imagshow_list', 0, false, formVals)
|
||||
}
|
||||
}
|
||||
|
||||
onHide('save')
|
||||
headSaveHandle()
|
||||
}
|
||||
|
||||
// 拷贝行数据
|
||||
copyFormVals = (data) => {
|
||||
const values = {}
|
||||
for (let attr in data) {
|
||||
values[attr] = {
|
||||
value: data[attr].value,
|
||||
display: data[attr].display,
|
||||
}
|
||||
}
|
||||
return values
|
||||
}
|
||||
|
||||
render() {
|
||||
const {
|
||||
props: {
|
||||
show,
|
||||
multiLang,
|
||||
onHide,
|
||||
form: { createForm, },
|
||||
},
|
||||
state: {},
|
||||
onEnter,
|
||||
onButtonClick,
|
||||
} = this
|
||||
|
||||
return (
|
||||
<NCModal
|
||||
fieldid="BatchAddModalImage"
|
||||
show={show}
|
||||
onHide={() => onHide('cancel')}
|
||||
onEnter={onEnter}
|
||||
size='lg'
|
||||
>
|
||||
<NCModal.Header closeButton={true}>
|
||||
<NCModal.Title>{multiLang['701010DOOROAD-020']}</NCModal.Title>
|
||||
</NCModal.Header>
|
||||
<NCModal.Body>
|
||||
{createForm('ssctp_imagshow_form', {
|
||||
isNoStandard: true,
|
||||
})}
|
||||
</NCModal.Body>
|
||||
<NCModal.Footer>
|
||||
<NCButton
|
||||
fieldid='batch-save'
|
||||
colors='primary'
|
||||
onClick={() => onButtonClick(this.props, 'batch_save')}
|
||||
>{multiLang['701010DOOROAD-006']}</NCButton>
|
||||
<NCButton
|
||||
fieldid='batch-cancel'
|
||||
onClick={() => onButtonClick(this.props, 'batch_cancel')}
|
||||
>{multiLang['701010DOOROAD-007']}</NCButton>
|
||||
</NCModal.Footer>
|
||||
</NCModal>
|
||||
)
|
||||
}
|
||||
}
|
||||
/*+YfJSE2wVV4tdUzmsv455q3iGlXZUI2mv/4od/TyZds=*/
|
|
@ -0,0 +1,79 @@
|
|||
/*3mS3VmANLuMaTtASFDOxHvWNecZeEeby5t7o9BNao9s=*/
|
||||
import { requestPromise, /* setStatePromise ,*/ } from 'ssccommon/utils/asyncFunctions.js';
|
||||
|
||||
import {
|
||||
toast,
|
||||
} from 'nc-lightapp-front';
|
||||
|
||||
/**
|
||||
* @desc 查询
|
||||
* @method asyncQry
|
||||
*/
|
||||
async function asyncQry() {
|
||||
try {
|
||||
const result = await requestPromise({
|
||||
url: `/nccloud/ssctp/dooroad/DRImageShowQueryAction.do`,
|
||||
data: {},
|
||||
});
|
||||
return result
|
||||
} catch (e) {
|
||||
toast({ title: e.message, duration: 5, color: 'danger', })
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* @desc 保存
|
||||
* @method asyncSave
|
||||
*/
|
||||
async function asyncSave(data) {
|
||||
try {
|
||||
const result = await requestPromise({
|
||||
url: `/nccloud/ssctp/dooroad/DRImageShowSaveAction.do`,
|
||||
data,
|
||||
hasErrCallBack: true,
|
||||
});
|
||||
return result
|
||||
} catch (e) {
|
||||
toast({ title: e.message, duration: 5, color: 'danger', })
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* @desc 删除
|
||||
* @method asyncDel
|
||||
*/
|
||||
async function asyncDel(data) {
|
||||
try {
|
||||
const result = await requestPromise({
|
||||
url: `/nccloud/ssctp/dooroad/DRImageShowDelAction.do`,
|
||||
data,
|
||||
});
|
||||
return result
|
||||
} catch (e) {
|
||||
toast({ title: e.message, duration: 5, color: 'danger', })
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* @desc 编辑后事件查询
|
||||
* @method asyncOtherSelect
|
||||
*/
|
||||
async function asyncOtherSelect(data) {
|
||||
try {
|
||||
const result = await requestPromise({
|
||||
url: `/nccloud/ssctp/dooroad/DROtherSelectOtsAction.do`,
|
||||
data,
|
||||
});
|
||||
return result
|
||||
} catch (e) {
|
||||
toast({ title: e.message, duration: 5, color: 'danger', })
|
||||
}
|
||||
}
|
||||
|
||||
export {
|
||||
asyncQry,
|
||||
asyncSave,
|
||||
asyncDel,
|
||||
asyncOtherSelect,
|
||||
}
|
||||
/*3mS3VmANLuMaTtASFDOxHvWNecZeEeby5t7o9BNao9s=*/
|
|
@ -0,0 +1,60 @@
|
|||
/*pmFWCFu5nhKkBzYmrkBaka23LzwyeVw+yP0Qu3SWeVg=*/
|
||||
import {
|
||||
getMultiLang,
|
||||
} from 'nc-lightapp-front';
|
||||
|
||||
export default function ({
|
||||
createUIDom, meta: { setMeta },
|
||||
button: { setButtons, createOprationButton, setButtonDisabled,},
|
||||
}) {
|
||||
const that = this
|
||||
createUIDom({}, function({ template, button }) {
|
||||
getMultiLang({moduleId: 7010, domainName: 'ssctp', currentLocale: 'zh-CN', callback: multiLang => {
|
||||
// 列表参照过滤
|
||||
template.ssctp_imagshow_list.items.forEach((item, idx, items) => {
|
||||
if (item.attrcode === 'pk_transtype') {
|
||||
item.queryCondition = () => ({
|
||||
GridRefActionExt: 'nccloud.web.ssctp.sscbd.ref.sqlbuilder.TranstypeForDRRefBuilder',
|
||||
})
|
||||
}
|
||||
})
|
||||
|
||||
// 批量新增参照过滤
|
||||
template.ssctp_imagshow_form.items.forEach((item, idx, items) => {
|
||||
if (item.attrcode === 'pk_transtype') {
|
||||
item.queryCondition = () => ({
|
||||
GridRefActionExt: 'nccloud.web.ssctp.sscbd.ref.sqlbuilder.TranstypeForDRRefBuilder',
|
||||
})
|
||||
}
|
||||
})
|
||||
|
||||
// // 添加操作列
|
||||
// template.ssctp_imagshow_list.items.push({
|
||||
// label: multiLang['701010DOOROAD-013'],
|
||||
// attrcode: "opr",
|
||||
// itemtype: "customer",
|
||||
// visible: true,
|
||||
// width: "100px",
|
||||
// fixed: "right",
|
||||
// render: (record, values, idx) => {
|
||||
// return createOprationButton(['param'], {
|
||||
// area: 'list_btnArea',
|
||||
// onButtonClick: (props, key) => {
|
||||
// that.showParamModal(values, idx)
|
||||
// }
|
||||
// });
|
||||
// }
|
||||
// })
|
||||
|
||||
setMeta(template);
|
||||
setButtons(button);
|
||||
that.setState({multiLang});
|
||||
|
||||
that.changePageStatu('browse')
|
||||
setButtonDisabled({Delete_head: true})
|
||||
that.listQry()
|
||||
|
||||
}})
|
||||
});
|
||||
}
|
||||
/*pmFWCFu5nhKkBzYmrkBaka23LzwyeVw+yP0Qu3SWeVg=*/
|
|
@ -0,0 +1,286 @@
|
|||
/*FDKFkr+TYgGKTTudQv9suM5TObrl0kaUnLjqLMCkTsQ=*/
|
||||
import React, { Component } from 'react';
|
||||
import ReactDOM from 'react-dom';
|
||||
import { createPage, promptBox, toast, } from "nc-lightapp-front";
|
||||
import initTemplate from "./events/initTemplate.js";
|
||||
import BillListStyle from 'ssccommon/components/bill-list';
|
||||
import ImageInterfaceSettingModal from './modal.js'
|
||||
import {
|
||||
asyncSave,
|
||||
asyncQry,
|
||||
asyncDel,
|
||||
asyncOtherSelect,
|
||||
} from './events/async.js'
|
||||
import BatchAddModal from './BatchAdd.js'
|
||||
|
||||
class ImageInterfaceSetting extends Component {
|
||||
constructor(props) {
|
||||
super(props);
|
||||
this.state = {
|
||||
showModal: false,
|
||||
multiLang: {},
|
||||
showBatchAddModal: false, // 批量添加
|
||||
pageStatus: 'browse', // 页面状态
|
||||
};
|
||||
|
||||
initTemplate.call(this, props);
|
||||
}
|
||||
|
||||
componentDidMount() {
|
||||
// 浏览器原生提示
|
||||
window.onbeforeunload = () => {
|
||||
if (this.state.pageStatus === 'edit') return ''
|
||||
}
|
||||
}
|
||||
|
||||
// 改变页面状态
|
||||
changePageStatu = status => {
|
||||
this.props.button.setButtonVisible({
|
||||
Add_head: true,
|
||||
Edit_head: status === 'browse',
|
||||
Delete_head: true,
|
||||
Save_head: status === 'edit',
|
||||
Cancel_head: status === 'edit',
|
||||
BatchAdd: status === 'browse',
|
||||
})
|
||||
this.props.editTable.setStatus('ssctp_imagshow_list', status)
|
||||
this.setState({pageStatus: status})
|
||||
this.props.button.setMainButton('Add_head', status === 'browse')
|
||||
}
|
||||
|
||||
// 头部按钮组事件
|
||||
headerBtnEventDistribute = () => ({
|
||||
Add_head: () => this.headAddHandle(),
|
||||
Edit_head: () => this.headEditHandle(),
|
||||
Delete_head: () => this.headDelHandle(),
|
||||
Save_head: () => this.headSaveHandle(),
|
||||
Cancel_head: () => this.headCancelHandle(),
|
||||
BatchAdd: () => this.setState({showBatchAddModal: true}),
|
||||
})
|
||||
|
||||
// 增加
|
||||
headAddHandle = () => {
|
||||
const rows = this.props.editTable.getAllData('ssctp_imagshow_list').rows
|
||||
this.props.editTable.addRow('ssctp_imagshow_list', rows.length, true, {})
|
||||
this.changePageStatu('edit')
|
||||
}
|
||||
|
||||
// 修改
|
||||
headEditHandle = () => {
|
||||
this.changePageStatu('edit')
|
||||
}
|
||||
|
||||
// 取消提示
|
||||
headCancelHandle = () => {
|
||||
// 浏览态
|
||||
return promptBox({
|
||||
color: 'warning',
|
||||
title: this.state.multiLang['701010DOOROAD-007'],
|
||||
content: this.state.multiLang['701010DOOROAD-019'],
|
||||
noFooter: false,
|
||||
noCancelBtn: false,
|
||||
beSureBtnClick: this.sureCancel,
|
||||
cancelBtnClick: () => {},
|
||||
closeByClickBackDrop: true,
|
||||
})
|
||||
}
|
||||
|
||||
// 确认取消
|
||||
sureCancel = () => {
|
||||
// 重新查询列表
|
||||
this.listQry()
|
||||
// 浏览态
|
||||
this.changePageStatu('browse')
|
||||
}
|
||||
|
||||
// 列表查询
|
||||
listQry = async (isRefresh = false) => {
|
||||
const response = await asyncQry()
|
||||
const {success, data} = response
|
||||
if (!success) return
|
||||
this.props.editTable.setTableData('ssctp_imagshow_list', data ? data.ssctp_imagshow_list : {rows: []})
|
||||
if (isRefresh) {
|
||||
toast({title: this.state.multiLang['701010DOOROAD-022'], duration: 5})
|
||||
}
|
||||
}
|
||||
|
||||
// 隐藏弹窗
|
||||
onHide = () => {
|
||||
this.setState({showModal: false})
|
||||
}
|
||||
|
||||
// 保存
|
||||
headSaveHandle = async () => {
|
||||
const {
|
||||
editTable: { filterEmptyRows, checkRequired, getAllData, setTableData},
|
||||
} = this.props
|
||||
filterEmptyRows('ssctp_imagshow_list', ['showtype'])
|
||||
const tableData = getAllData('ssctp_imagshow_list')
|
||||
if (!checkRequired('ssctp_imagshow_list', tableData.rows)) return
|
||||
const response = await asyncSave({ssctp_imagshow_list: tableData})
|
||||
if (!response) return
|
||||
const {success, data} = response
|
||||
if (!success) return
|
||||
setTableData('ssctp_imagshow_list', data ? data.ssctp_imagshow_list : {rows: []})
|
||||
this.changePageStatu('browse')
|
||||
toast({ title: this.state.multiLang['701010DOOROAD-016'], duration: 5})
|
||||
}
|
||||
|
||||
// 删除提示
|
||||
headDelHandle = () => {
|
||||
if (this.state.pageStatus === 'browse') {
|
||||
const checkedRows = this.props.editTable.getCheckedRows('ssctp_imagshow_list')
|
||||
if (!checkedRows.length) return
|
||||
return promptBox({
|
||||
color: 'warning',
|
||||
title: this.state.multiLang['701010DOOROAD-003'],
|
||||
content: this.state.multiLang['701010DOOROAD-018'],
|
||||
noFooter: false,
|
||||
noCancelBtn: false,
|
||||
beSureBtnClick: this.sureDel,
|
||||
cancelBtnClick: () => {},
|
||||
closeByClickBackDrop: true,
|
||||
})
|
||||
} else {
|
||||
const checkedIndex = this.props.editTable.getCheckedRows('ssctp_imagshow_list').map(row => row.index)
|
||||
if (!checkedIndex.length) return
|
||||
this.props.editTable.deleteTableRowsByIndex('ssctp_imagshow_list', checkedIndex)
|
||||
}
|
||||
}
|
||||
|
||||
// 确认删除
|
||||
sureDel = async () => {
|
||||
const {
|
||||
deleteTableRowsByIndex, getCheckedRows, getAllData, setTableData,
|
||||
} = this.props.editTable
|
||||
|
||||
const toDelIdxs = getCheckedRows('ssctp_imagshow_list').map(row => row.index)
|
||||
deleteTableRowsByIndex('ssctp_imagshow_list', toDelIdxs)
|
||||
|
||||
const response = await asyncDel({ssctp_imagshow_list: getAllData('ssctp_imagshow_list')})
|
||||
const {success, data} = response
|
||||
if (!success || !data) return
|
||||
|
||||
setTableData('ssctp_imagshow_list', data.ssctp_imagshow_list)
|
||||
toast({ title: this.state.multiLang['701010DOOROAD-017'], duration: 5})
|
||||
}
|
||||
|
||||
// 显示弹窗
|
||||
showParamModal = (row, index) => {
|
||||
this.setState({showModal: true})
|
||||
}
|
||||
|
||||
// 列表编辑后事件
|
||||
onAfterEvent = async (props, areaId, key, currentValue, changedrows, index, row, ...others) => {
|
||||
if (key === 'pk_transtype') {
|
||||
const transtype_code = currentValue.refcode || ''
|
||||
props.editTable.setValByKeyAndIndex(areaId, index, 'transtype_code', {value: transtype_code, display: transtype_code})
|
||||
}
|
||||
|
||||
// if (key !== 'pk_ots') {
|
||||
// return true
|
||||
// }
|
||||
// const {
|
||||
// editTable: { setValByKeyAndIndex, },
|
||||
// } = props
|
||||
// if (!currentValue.refpk) {
|
||||
// setValByKeyAndIndex(areaId, index, 'url', {value: '', display: ''})
|
||||
// return true
|
||||
// }
|
||||
// const response = await asyncOtherSelect({pk_ots: currentValue.refpk})
|
||||
// const {success, data} = response
|
||||
// if (!success || !data) return true
|
||||
// setValByKeyAndIndex(areaId, index, 'url', {value: `${data.ip}:${data.port}`, display: `${data.ip}:${data.port}`})
|
||||
}
|
||||
|
||||
// 列表选中变更事件
|
||||
selectedChange = (props, areaId, newVal, oldVal) => {
|
||||
this.props.button.setButtonDisabled({Delete_head: !newVal})
|
||||
}
|
||||
|
||||
// 刷新
|
||||
refreshButtonEvent = () => {
|
||||
this.listQry(true)
|
||||
}
|
||||
|
||||
render() {
|
||||
const {
|
||||
state: {
|
||||
multiLang,
|
||||
showBatchAddModal,
|
||||
pageStatus,
|
||||
},
|
||||
props: {
|
||||
getSearchParam,
|
||||
editTable: { createEditTable, },
|
||||
},
|
||||
headerBtnEventDistribute,
|
||||
onHide,
|
||||
onAfterEvent,
|
||||
selectedChange,
|
||||
changePageStatu,
|
||||
refreshButtonEvent,
|
||||
headSaveHandle,
|
||||
} = this
|
||||
|
||||
return (
|
||||
<BillListStyle {...this.props}>
|
||||
|
||||
<BillListStyle.HeadArea
|
||||
title={getSearchParam('n') || multiLang['701010DOOROAD-009']}
|
||||
refreshButtonEvent={refreshButtonEvent}
|
||||
status={pageStatus}
|
||||
>
|
||||
{/* 头部按钮组 */}
|
||||
<BillListStyle.ButtonGroup
|
||||
area={'head_btnArea'}
|
||||
buttonEvent={headerBtnEventDistribute}
|
||||
/>
|
||||
</BillListStyle.HeadArea>
|
||||
|
||||
<BillListStyle.BodyArea>
|
||||
{/* 列表 */}
|
||||
{createEditTable(
|
||||
'ssctp_imagshow_list',
|
||||
{
|
||||
showIndex: true,
|
||||
showCheck: true,
|
||||
isAddRow: true,
|
||||
onAfterEvent,
|
||||
selectedChange,
|
||||
adaptionHeight: true,
|
||||
},
|
||||
)}
|
||||
</BillListStyle.BodyArea>
|
||||
|
||||
<ImageInterfaceSettingModal
|
||||
onHide={onHide}
|
||||
{...this.state}
|
||||
{...this.props}
|
||||
/>
|
||||
|
||||
<BatchAddModal
|
||||
show={showBatchAddModal}
|
||||
onHide={action => {
|
||||
this.setState({showBatchAddModal: false})
|
||||
if (action === 'save') {
|
||||
changePageStatu('edit')
|
||||
} else {
|
||||
changePageStatu('browse')
|
||||
}
|
||||
}}
|
||||
setPageEdit={() => changePageStatu('edit')}
|
||||
headSaveHandle={headSaveHandle}
|
||||
{...this.state}
|
||||
{...this.props}
|
||||
/>
|
||||
|
||||
</BillListStyle>
|
||||
);
|
||||
}
|
||||
}
|
||||
|
||||
ImageInterfaceSetting = createPage({ mutiLangCode: '7010' })(ImageInterfaceSetting);
|
||||
ReactDOM.render(<ImageInterfaceSetting/>, document.querySelector("#app"));
|
||||
|
||||
/*FDKFkr+TYgGKTTudQv9suM5TObrl0kaUnLjqLMCkTsQ=*/
|
|
@ -0,0 +1,51 @@
|
|||
/*8o+P8J7kLOMsCOkr3TeeGIRKKnnuiYLht9+O74e2aAU=*/
|
||||
import React, { Component, } from 'react';
|
||||
import { base, } from 'nc-lightapp-front';
|
||||
const { NCModal, NCButton,} = base;
|
||||
|
||||
export default class ImageInterfaceSettingModal extends Component {
|
||||
constructor(props) {
|
||||
super(props)
|
||||
this.state = {}
|
||||
}
|
||||
|
||||
render() {
|
||||
const {
|
||||
props: {
|
||||
showModal,
|
||||
multiLang,
|
||||
editTable: { createEditTable, },
|
||||
button: { createButtonApp, },
|
||||
onHide,
|
||||
},
|
||||
state: {},
|
||||
} = this
|
||||
|
||||
return (
|
||||
<NCModal
|
||||
fieldid="ImageInterfaceSettingModal"
|
||||
show={showModal}
|
||||
onHide={onHide}
|
||||
size='lg'
|
||||
>
|
||||
<NCModal.Header closeButton={true}>
|
||||
<NCModal.Title>{multiLang['701010DOOROAD-010']}</NCModal.Title>
|
||||
</NCModal.Header>
|
||||
<NCModal.Body>
|
||||
{createEditTable('param', {
|
||||
showIndex: true,
|
||||
showCheck: true,
|
||||
isAddRow: true,
|
||||
})}
|
||||
</NCModal.Body>
|
||||
<NCModal.Footer>
|
||||
{createButtonApp({
|
||||
area: 'form_btnArea',
|
||||
onButtonClick: (props, key) => {},
|
||||
})}
|
||||
</NCModal.Footer>
|
||||
</NCModal>
|
||||
)
|
||||
}
|
||||
}
|
||||
/*8o+P8J7kLOMsCOkr3TeeGIRKKnnuiYLht9+O74e2aAU=*/
|
|
@ -0,0 +1,76 @@
|
|||
/*JM8uPPGENTbQMhsgGLERSe1ppcxQaSSiLZDws+vJ2z0=*/
|
||||
import React, { Component } from 'react';
|
||||
import { createPage, base } from 'nc-lightapp-front';
|
||||
import presetVar from './presetVar';
|
||||
import requestApi from './requestApi';
|
||||
import pubMessage from 'ssccommon/utils/pubMessage';
|
||||
import initTemplate from './initTemplate';
|
||||
import { buttonEvent, afterEvent } from './events';
|
||||
import { ProfileStyle, ProfileHead, ProfileBody, BodyRight, HeadCenterCustom, ButtonGroup } from 'ssccommon/components/profile';
|
||||
import { EditTable } from 'ssccommon/components/table';
|
||||
const { NCCheckbox, NCModal, NCButton, NCFormControl } = base;
|
||||
import './index.less';
|
||||
|
||||
|
||||
const pageButton = presetVar.pageButton
|
||||
class LinkVoucher extends Component {
|
||||
constructor(props) {
|
||||
super(props);
|
||||
this.state = {
|
||||
queryDataJSX: []
|
||||
}
|
||||
initTemplate.call(this, props);
|
||||
}
|
||||
|
||||
componentWillMount() {
|
||||
}
|
||||
|
||||
componentDidMount() {
|
||||
|
||||
}
|
||||
|
||||
|
||||
render() {
|
||||
const { table, form } = this.props;
|
||||
const { createSimpleTable } = table;
|
||||
const { createForm } = form;
|
||||
let multiLang = this.props.MutiInit.getIntl(presetVar.multiLangCode);
|
||||
multiLang || (multiLang = { get: () => null });
|
||||
return (
|
||||
<ProfileStyle layout="singleTable" {...this.props}>
|
||||
{/*页面头*/}
|
||||
<ProfileHead
|
||||
title={multiLang.get("7011-0001")} /* 联查凭证 */
|
||||
>
|
||||
{/* <ButtonGroup
|
||||
area={presetVar.headBtnArea}
|
||||
ctrlEditTableArea={[presetVar.listArea]}
|
||||
buttonEvent={
|
||||
(...params) => { return buttonEvent.apply(this, params) }
|
||||
}
|
||||
/> */}
|
||||
</ProfileHead>
|
||||
{/*页面体*/}
|
||||
<ProfileBody>
|
||||
<div className='voucher-list'>
|
||||
{
|
||||
this.state.queryDataJSX.length ?
|
||||
this.state.queryDataJSX
|
||||
:
|
||||
<div style={{marginTop: '10px', textAlign: 'center'}}>
|
||||
{this.state.isNondata && multiLang.get("7011-0002")}
|
||||
</div>
|
||||
}
|
||||
|
||||
</div>
|
||||
</ProfileBody>
|
||||
</ProfileStyle>
|
||||
)
|
||||
}
|
||||
}
|
||||
|
||||
LinkVoucher = createPage({
|
||||
mutiLangCode: presetVar.multiLangCode
|
||||
})(LinkVoucher);
|
||||
export default LinkVoucher;
|
||||
/*JM8uPPGENTbQMhsgGLERSe1ppcxQaSSiLZDws+vJ2z0=*/
|
|
@ -0,0 +1,55 @@
|
|||
/*DncIqBreQz6WZRX+v7OzgYck/N8QqnGjlSwXHOEruow=*/
|
||||
import { base } from "nc-lightapp-front";
|
||||
import presetVar from '../presetVar';
|
||||
import requestApi from "../requestApi";
|
||||
let { NCMessage } = base;
|
||||
export default async function afterEvent(...params) {
|
||||
let props = params[0];
|
||||
let areaId = params[1];
|
||||
let fieldId = params[2];
|
||||
let changedrows = params[4];
|
||||
let index = params[5]
|
||||
let rowRecord = params[6];
|
||||
let values = rowRecord.values;
|
||||
let multiLang = props.MutiInit.getIntl(presetVar.multiLangCode);
|
||||
switch (areaId) {
|
||||
case presetVar.listArea:
|
||||
|
||||
this.props.handleRelationItems({
|
||||
type: 'table', //编辑的是表单值为'form', 编辑的是表格值为'table'
|
||||
areaCode: areaId, //编辑区域的编码
|
||||
key: fieldId, //编辑字段英文名称
|
||||
value: { value: values[fieldId].value }, //编辑字段的新值
|
||||
changedrows, // 若编辑的是表格,需要传该参数(编辑字段的旧值),表单不传
|
||||
index, //当前是第几行 : 从 0 开始,编辑表格时,需要传该参数,表单不传
|
||||
callback: () => {
|
||||
switch (fieldId) {
|
||||
case "isuse":
|
||||
/* let result = await requestApi.enable({
|
||||
pk_sscunit: values.pk_sscunit.value,
|
||||
pk_class: values.pk_class.value,
|
||||
isuse: values.isuse.value ? 'Y' : 'N'
|
||||
});
|
||||
this.props.editTable.setValByKeyAndRowId(areaId, rowRecord.rowid, "ts", {
|
||||
value: result.data[presetVar.listArea].rows[0].values.ts.value,
|
||||
});
|
||||
this.props.editTable.setValByKeyAndRowId(areaId, rowRecord.rowid, fieldId, {
|
||||
value: values.isuse.value
|
||||
});
|
||||
//以下必须重新设置表格数据,否则在table变化状态时,数据会被还原。
|
||||
let tableData = this.props.editTable.getAllData(areaId);
|
||||
props.editTable.setTableData(areaId, tableData);
|
||||
this.pubMessage.operateSuccess(); */
|
||||
break;
|
||||
default:
|
||||
break;
|
||||
}
|
||||
}, //请求成功的回调(业务组自己的编辑后事件),
|
||||
//formMetaCode: 'card_head' //若编辑的是分组表单,为当前编辑的表单分组的区域编码
|
||||
})
|
||||
break;
|
||||
default:
|
||||
break;
|
||||
}
|
||||
}
|
||||
/*DncIqBreQz6WZRX+v7OzgYck/N8QqnGjlSwXHOEruow=*/
|
|
@ -0,0 +1,91 @@
|
|||
/*oSJmPrU3sG4z5K4LEKqHwMU4cwVci4NkRlcfds1rDzQ=*/
|
||||
import { toast } from 'nc-lightapp-front';
|
||||
import presetVar from '../presetVar';
|
||||
import requestApi from '../requestApi';
|
||||
|
||||
const {
|
||||
Save, Delete, Add, Edit, Cancel
|
||||
} = presetVar.pageButton;
|
||||
/**
|
||||
* 按钮事件
|
||||
*/
|
||||
function buttonEvent() {
|
||||
let props = this.props;
|
||||
let multiLang = this.props.MutiInit.getIntl(presetVar.multiLangCode);
|
||||
return {
|
||||
// 保存
|
||||
[Save]: {
|
||||
url: '/nccloud/sscbd/sscbase/ProblemClassSaveAction.do',
|
||||
beforeClick: () => {
|
||||
// 保存前删除空行
|
||||
props.editTable.filterEmptyRows(presetVar.listArea, []);
|
||||
return {
|
||||
extReqParams: {
|
||||
userjson: JSON.stringify({pk_sscunit: this.state.SSCCenter.refpk})
|
||||
}
|
||||
};
|
||||
},
|
||||
afterClick: (ncProps, data) => {
|
||||
// 浏览态新增按钮为主按钮,设置新增按钮为主按钮
|
||||
props.button.setMainButton(Add, true);
|
||||
//设置按钮行为为弹窗
|
||||
//7002-AUDIT-0006:确认要删除吗?
|
||||
props.button.setPopContent(Delete, multiLang && multiLang.get('7002-AUDIT-0006')) /* 设置操作列上删除按钮的弹窗提示 */
|
||||
this.setState({
|
||||
isEdit: false
|
||||
})
|
||||
}
|
||||
},
|
||||
// 删除
|
||||
[Delete]: async (record) => {
|
||||
if (this.props.editTable.getStatus(presetVar.listArea) == "browse") {
|
||||
let result = await requestApi.deleteRow(
|
||||
[record.values.pk_class.value]
|
||||
);
|
||||
this.props.editTable.deleteTableRowsByRowId(presetVar.listArea, record.rowid, true)
|
||||
result.success && this.pubMessage.deleteSuccess();
|
||||
} else {
|
||||
this.props.editTable.deleteTableRowsByRowId(presetVar.listArea, record.rowid, false)
|
||||
}
|
||||
|
||||
},
|
||||
// 增行
|
||||
[Add]: {
|
||||
afterClick: (ncProps) => {
|
||||
// 编辑态保存按钮为主按钮,取消新增按钮的主按钮状态
|
||||
props.button.setMainButton(Add, false);
|
||||
//设置按钮行为为弹窗
|
||||
props.button.setPopContent(Delete) /* 设置操作列上删除按钮的弹窗提示 */
|
||||
this.setState({
|
||||
isEdit: true
|
||||
})
|
||||
}
|
||||
},
|
||||
// 编辑
|
||||
[Edit]: {
|
||||
afterClick: (ncProps) => {
|
||||
// 编辑态保存按钮为主按钮,取消新增按钮的主按钮状态
|
||||
props.button.setMainButton(Add, false);
|
||||
//设置按钮行为为弹窗
|
||||
props.button.setPopContent(Delete) /* 设置操作列上删除按钮的弹窗提示 */
|
||||
this.setState({
|
||||
isEdit: true
|
||||
})
|
||||
}
|
||||
},
|
||||
// 取消
|
||||
[Cancel]: {
|
||||
afterClick: (ncProps) => {
|
||||
// 浏览态新增按钮为主按钮,设置新增按钮为主按钮
|
||||
props.button.setMainButton(Add, true);
|
||||
//设置按钮行为为弹窗
|
||||
props.button.setPopContent(Delete, multiLang && multiLang.get('7002-AUDIT-0006')) /* 设置操作列上删除按钮的弹窗提示 */
|
||||
this.setState({
|
||||
isEdit: false
|
||||
})
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
export default buttonEvent
|
||||
/*oSJmPrU3sG4z5K4LEKqHwMU4cwVci4NkRlcfds1rDzQ=*/
|
|
@ -0,0 +1,5 @@
|
|||
/*FDKFkr+TYgGKTTudQv9suM5TObrl0kaUnLjqLMCkTsQ=*/
|
||||
import buttonEvent from './buttonEvent';
|
||||
import afterEvent from './afterEvent';
|
||||
export {buttonEvent, afterEvent};
|
||||
/*FDKFkr+TYgGKTTudQv9suM5TObrl0kaUnLjqLMCkTsQ=*/
|
|
@ -0,0 +1,8 @@
|
|||
/*FDKFkr+TYgGKTTudQv9suM5TObrl0kaUnLjqLMCkTsQ=*/
|
||||
import React from 'react';
|
||||
import ReactDOM from 'react-dom';
|
||||
import LinkVoucher from './LinkVoucher';
|
||||
ReactDOM.render(<LinkVoucher />
|
||||
, document.querySelector('#app'));
|
||||
|
||||
/*FDKFkr+TYgGKTTudQv9suM5TObrl0kaUnLjqLMCkTsQ=*/
|
|
@ -0,0 +1,31 @@
|
|||
.voucher-list {
|
||||
background: #fff;
|
||||
padding: 5px 10px;
|
||||
}
|
||||
|
||||
.voucher-item {
|
||||
background: #fff;
|
||||
margin-bottom: 10px;
|
||||
border: 1px solid #ccc;
|
||||
border-radius: 4px;
|
||||
}
|
||||
|
||||
.nc-single-table {
|
||||
background: #FFF;
|
||||
}
|
||||
|
||||
.voucher-bottom {
|
||||
display: flex;
|
||||
justify-content: flex-end;
|
||||
padding-right: 30px;
|
||||
background: #f6f6f6;
|
||||
line-height: 30px;
|
||||
.voucher-bottom-item {
|
||||
font-size: 13px;
|
||||
margin-left: 30px;
|
||||
font-weight: 400;
|
||||
span {
|
||||
color: #ff6607;
|
||||
}
|
||||
}
|
||||
}
|
|
@ -0,0 +1,114 @@
|
|||
/*pmFWCFu5nhKkBzYmrkBaka23LzwyeVw+yP0Qu3SWeVg=*/
|
||||
import 'ssccommon/components/globalPresetVar';
|
||||
import presetVar from './presetVar';
|
||||
import requestApi from './requestApi';
|
||||
|
||||
export default async function (props) {
|
||||
|
||||
let createUIDomPromise = new Promise((resolve, _) => {
|
||||
props.createUIDom(
|
||||
{},
|
||||
(tplData) => {
|
||||
resolve(tplData);
|
||||
}
|
||||
)
|
||||
})
|
||||
|
||||
/* let queryPromise = requestApi.query({
|
||||
billid: '1001A9100000000022L7',
|
||||
pk_group: '0001A91000000000034H',
|
||||
pk_org: '0001A910000000000FJ5',
|
||||
transtypecode: 's2641_transtype'
|
||||
}) */
|
||||
|
||||
let queryPromise = requestApi.query({
|
||||
billid: props.getUrlParam('billid'),
|
||||
pk_group: props.getUrlParam('pk_group'),
|
||||
pk_org: props.getUrlParam('pk_org'),
|
||||
transtypecode: props.getUrlParam('transtypecode')
|
||||
})
|
||||
|
||||
let result = await Promise.all([createUIDomPromise, queryPromise]);
|
||||
|
||||
let tplData = result[0];
|
||||
let queryData = result[1].data.datas || [];
|
||||
|
||||
let { template: meta, button } = tplData;
|
||||
//queryData[1] = queryData[0];
|
||||
|
||||
//渲染模板处理
|
||||
metaHandle.call(this, meta, queryData)
|
||||
//props.button.setButtons(button);
|
||||
//设置渲染模板
|
||||
this.props.meta.setMeta(meta);
|
||||
|
||||
//设置数据
|
||||
queryData.forEach((item, index) => {
|
||||
this.props.form.setAllFormValue({ [`${presetVar.headArea}_${index}`] : item.head.head});
|
||||
this.props.table.setAllTableData(`${presetVar.bodyArea}_${index}`, item.body.body);
|
||||
|
||||
})
|
||||
|
||||
}
|
||||
|
||||
function metaHandle(meta, queryData) {
|
||||
const { table, form } = this.props;
|
||||
const { createSimpleTable } = table;
|
||||
const { createForm } = form;
|
||||
let queryDataJSX = [];
|
||||
|
||||
let headMeta = meta[presetVar.headArea];
|
||||
|
||||
let totalcreditTxt = ''; //借方合计
|
||||
let totaldebitTxt = ''; //贷方合计
|
||||
headMeta.items.forEach((item) => {
|
||||
if (item.attrcode == 'totalcredit') {
|
||||
totalcreditTxt = item.label;
|
||||
}
|
||||
if (item.attrcode == 'totaldebit') {
|
||||
totaldebitTxt = item.label;
|
||||
}
|
||||
})
|
||||
|
||||
queryData.forEach((item, index) => {
|
||||
let newHead = `${presetVar.headArea}_${index}`
|
||||
let newBody = `${presetVar.bodyArea}_${index}`;
|
||||
|
||||
item.head.head.areacode = newHead;
|
||||
item.body.body.areacode = newBody;
|
||||
|
||||
meta[newHead] = {...meta[presetVar.headArea], code: newHead};
|
||||
meta[newBody] = {...meta[presetVar.bodyArea], code: newBody};
|
||||
|
||||
|
||||
let headData = item.head.head.rows[0].values;
|
||||
|
||||
queryDataJSX.push(
|
||||
<div className="voucher-item">
|
||||
{createForm(newHead, {
|
||||
isNoStandard: true
|
||||
})}
|
||||
{createSimpleTable(newBody, {
|
||||
showIndex: true,
|
||||
height: 200
|
||||
})}
|
||||
<div className="voucher-bottom">
|
||||
{/* 借方合计 */}
|
||||
<div className="voucher-bottom-item">{totalcreditTxt}:<span>{headData.totalcredit.value}</span></div>
|
||||
{/* 贷方合计 */}
|
||||
<div className="voucher-bottom-item">{totaldebitTxt}:<span>{headData.totaldebit.value}</span></div>
|
||||
</div>
|
||||
</div>
|
||||
)
|
||||
})
|
||||
let isNondata = false;
|
||||
if (queryDataJSX.length == 0) {
|
||||
isNondata = true;
|
||||
}
|
||||
this.setState({
|
||||
queryDataJSX,
|
||||
isNondata
|
||||
})
|
||||
|
||||
}
|
||||
/*pmFWCFu5nhKkBzYmrkBaka23LzwyeVw+yP0Qu3SWeVg=*/
|
|
@ -0,0 +1,21 @@
|
|||
/*NfbwZuhGuJXM+2qP8b1Tl7HfgjESboSZgS3QnS7gjOs=*/
|
||||
/**页面全局变量 */
|
||||
let presetVar = {
|
||||
headArea: 'head',
|
||||
bodyArea: 'body',
|
||||
headBtnArea: 'page_header',
|
||||
pageButton: {
|
||||
Save: 'Save',
|
||||
Delete: 'Delete',
|
||||
Add: 'Add',
|
||||
Edit: 'Edit',
|
||||
Cancel: 'Cancel',
|
||||
DelLine: 'DelLine',
|
||||
SetLine: 'Set',
|
||||
EditLine: 'EditLine'
|
||||
},
|
||||
multiLangCode: '7011'
|
||||
};
|
||||
|
||||
export default presetVar;
|
||||
/*NfbwZuhGuJXM+2qP8b1Tl7HfgjESboSZgS3QnS7gjOs=*/
|
|
@ -0,0 +1,27 @@
|
|||
/*Mq+ry/aXt/6nN0mNqW5qEIFeSGycgB9gi2ynbY6bvYw=*/
|
||||
import { requestPromise } from 'ssccommon/utils/asyncFunctions.js';
|
||||
|
||||
import {
|
||||
toast,
|
||||
} from 'nc-lightapp-front';
|
||||
|
||||
/**
|
||||
* @method query 查询
|
||||
* @return {Object} 出参报文
|
||||
*/
|
||||
async function query(data) {
|
||||
try {
|
||||
const result = await requestPromise({
|
||||
url: `/nccloud/ssctp/dooroad/DRLinkVoucherAction.do`,
|
||||
data
|
||||
});
|
||||
return result
|
||||
} catch (e) {
|
||||
toast({ title: e.message, duration: 5, color: 'danger', })
|
||||
}
|
||||
}
|
||||
|
||||
export default {
|
||||
query
|
||||
}
|
||||
/*Mq+ry/aXt/6nN0mNqW5qEIFeSGycgB9gi2ynbY6bvYw=*/
|
|
@ -0,0 +1,215 @@
|
|||
/*dblajF+af+yID9H3pBHGr5XRfqOgoG/Gpge0pHK6TR4=*/
|
||||
import { Component } from "react";
|
||||
import { createPage, getMultiLang, createPageIcon, base, ajax } from "nc-lightapp-front";
|
||||
const {NCButton, NCModal, NCFormControl, NCDiv} = base
|
||||
import "./index.less";
|
||||
import initTemplate from "./events/initTemplate.js";
|
||||
import {
|
||||
logicalSearchList,
|
||||
logicalSearchAreaAfterEvent,
|
||||
logicalManualReturn,
|
||||
logicalOpenBill,
|
||||
} from './events/logicalEvents.js'
|
||||
import BillListStyle from 'ssccommon/components/bill-list';
|
||||
import PubMessage from 'ssccommon/utils/pubMessage';
|
||||
|
||||
class ApprovalMonitoring extends Component {
|
||||
constructor(props) {
|
||||
super(props);
|
||||
this.state = {
|
||||
multiLang: {}, // 多语
|
||||
showCheckModal: false, // 退回人工处理modal
|
||||
modalVal: '', //退回人工处理原因
|
||||
disabled: true, //退回人工处理按钮禁用
|
||||
};
|
||||
//toast消息公共组件
|
||||
this.pubMessage = new PubMessage();
|
||||
//初始化
|
||||
initTemplate.call(this, props);
|
||||
}
|
||||
|
||||
componentDidMount() {
|
||||
getMultiLang({
|
||||
moduleId: 7010,
|
||||
domainName: 'ssctp',
|
||||
currentLocale: 'zh-CN',
|
||||
callback: (multiLang) => {
|
||||
this.setState({multiLang})
|
||||
}
|
||||
})
|
||||
}
|
||||
|
||||
// 查询区查询操作回调
|
||||
clickSearchBtn = (props, conditions) => {
|
||||
this.conditions = conditions;
|
||||
logicalSearchList.call(this, conditions)
|
||||
}
|
||||
|
||||
// 查询区编辑后事件
|
||||
onAfterEvent = (attrcode, values, area) => logicalSearchAreaAfterEvent.call(this, attrcode, values, area)
|
||||
|
||||
// 查询区组件挂载完成回调
|
||||
renderCompleteEvent = () => {}
|
||||
|
||||
// table翻页
|
||||
handlePageInfoChange = (props, tableInfo, allpks, index) => logicalSearchList.call(this, null, allpks)
|
||||
|
||||
// 退回人工处理
|
||||
manualReturn = () => logicalManualReturn.call(this)
|
||||
|
||||
// 退回人工处理按钮点击
|
||||
headerBtnClick = () => {
|
||||
// 校验 列表选中
|
||||
// const checkedRows = this.props.table.getCheckedRows('approvalMonitoringList')
|
||||
// if (checkedRows.length === 0) return toast({
|
||||
// color: 'warning',
|
||||
// title: this.state.multiLang['701004SPJK_008'],
|
||||
// duration: 3
|
||||
// })
|
||||
//需要判断saga
|
||||
const { saga_status, pk_currenttask } = this.selectedRow;
|
||||
|
||||
if(saga_status && saga_status.value === "1") {
|
||||
//前端saga事务错误,去后端再次验证
|
||||
ajax({
|
||||
url: '/nccloud/ssctp/sscbd/SSCSagaCheckAction.do',
|
||||
data: {
|
||||
pk_currenttask: pk_currenttask.value
|
||||
},
|
||||
success: () => this.setState({showCheckModal: true})
|
||||
});
|
||||
} else {
|
||||
this.setState({showCheckModal: true})
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
|
||||
selectedChange = () => {
|
||||
const {
|
||||
table: {getCheckedRows,},
|
||||
} = this.props
|
||||
|
||||
const disabled = !(getCheckedRows('approvalMonitoringList').length > 0)
|
||||
this.setState({disabled})
|
||||
}
|
||||
|
||||
onRowDoubleClick = (record, idx, props, ...others) => logicalOpenBill.call(this, record)
|
||||
|
||||
socketMesg = (props, mesg) => {
|
||||
if(!mesg.error) {
|
||||
//更新列表数据
|
||||
logicalSearchList.call(this, this.conditions)
|
||||
}
|
||||
}
|
||||
|
||||
render() {
|
||||
const {
|
||||
state: { multiLang, showCheckModal, modalVal, disabled, },
|
||||
props: {
|
||||
search: { NCCreateSearch },
|
||||
table: { createSimpleTable },
|
||||
socket
|
||||
},
|
||||
clickSearchBtn,
|
||||
onAfterEvent,
|
||||
renderCompleteEvent,
|
||||
handlePageInfoChange,
|
||||
manualReturn,
|
||||
headerBtnClick,
|
||||
selectedChange,
|
||||
onRowDoubleClick,
|
||||
} = this
|
||||
|
||||
const { createBillHeadInfo } = this.props.BillHeadInfo;
|
||||
return [
|
||||
socket.connectMesg({
|
||||
tableAreaCode: "approvalMonitoringList",
|
||||
billpkname: "pk_approvemonitor",
|
||||
billtype: "",
|
||||
onMessage: this.socketMesg
|
||||
// 本地前端调试,请传ip和端口
|
||||
// 打包到测试环境之前 去掉
|
||||
// serverLocation: "172.16.86.11:8883"
|
||||
}),
|
||||
<BillListStyle id="approval-monitoring" {...this.props}>
|
||||
{/* 头部 */}
|
||||
<BillListStyle.HeadArea title={multiLang && multiLang['701004SPJK_001']}>
|
||||
{/* btn-group */}
|
||||
{/*
|
||||
701004SPJK_004 退回人工处理
|
||||
*/}
|
||||
{/* <BillListStyle.NonstandardButtonGroup> */}
|
||||
{/* <NCButton
|
||||
fieldid='return-manual-btn'
|
||||
onClick={headerBtnClick}
|
||||
disabled={disabled}
|
||||
>{multiLang['701004SPJK_004']}</NCButton> */}
|
||||
{/* </BillListStyle.NonstandardButtonGroup> */}
|
||||
</BillListStyle.HeadArea>
|
||||
{/* 查询区 */}
|
||||
<BillListStyle.SearchArea>
|
||||
{NCCreateSearch("approvalMonitoringSearchArea", {
|
||||
hideSearchCondition: false,
|
||||
hideBtnArea: false,
|
||||
showAdvBtn: false,
|
||||
clickSearchBtn,
|
||||
onAfterEvent,
|
||||
showClearBtn: true,
|
||||
renderCompleteEvent
|
||||
})}
|
||||
</BillListStyle.SearchArea>
|
||||
{/* 列表区 */}
|
||||
<BillListStyle.BodyArea>
|
||||
{createSimpleTable("approvalMonitoringList", {
|
||||
showIndex: true,
|
||||
// showCheck: true,
|
||||
pkname: "pk_approvemonitor",
|
||||
handlePageInfoChange,
|
||||
selectedChange,
|
||||
onRowDoubleClick,
|
||||
})}
|
||||
</BillListStyle.BodyArea>
|
||||
|
||||
{/* 退回人工处理Modal */}
|
||||
<NCModal
|
||||
fieldid='return-manual'
|
||||
show={showCheckModal}
|
||||
onHide={() => this.setState({showCheckModal: false, modalVal: ''})}
|
||||
backdrop={'static'}
|
||||
>
|
||||
<NCModal.Header closeButton={true}>
|
||||
<NCModal.Title>{multiLang['701004SPJK_004']}</NCModal.Title>
|
||||
</NCModal.Header>
|
||||
<NCModal.Body>
|
||||
<NCFormControl
|
||||
fieldid="return-manual-input"
|
||||
value={modalVal}
|
||||
onChange={(modalVal) => this.setState({modalVal})}
|
||||
placeholder={multiLang['701004SPJK_004']}
|
||||
/>
|
||||
</NCModal.Body>
|
||||
<NCModal.Footer>
|
||||
{/* 701004SPJK_005 确认 */}
|
||||
<NCButton
|
||||
colors='primary'
|
||||
onClick={manualReturn}
|
||||
fieldid='confirm'
|
||||
>{multiLang['701004SPJK_005']}</NCButton>
|
||||
{/* 701004SPJK_006 取消 */}
|
||||
<NCButton
|
||||
fieldid='cancel'
|
||||
onClick={() => {this.setState({showCheckModal: false, modalVal: ''})}}
|
||||
>{multiLang['701004SPJK_006']}</NCButton>
|
||||
</NCModal.Footer>
|
||||
</NCModal>
|
||||
|
||||
</BillListStyle>
|
||||
];
|
||||
}
|
||||
}
|
||||
|
||||
ApprovalMonitoring = createPage({ mutiLangCode: '7010' })(ApprovalMonitoring);
|
||||
export default ApprovalMonitoring;
|
||||
|
||||
/*dblajF+af+yID9H3pBHGr5XRfqOgoG/Gpge0pHK6TR4=*/
|
|
@ -0,0 +1,92 @@
|
|||
/*pmFWCFu5nhKkBzYmrkBaka23LzwyeVw+yP0Qu3SWeVg=*/
|
||||
import { logicalOpenBill } from './logicalEvents'
|
||||
|
||||
export default function ({
|
||||
createUIDom, meta: { setMeta }, table: { setTableRender }, search: { getSearchValByField }, button: { createErrorButton, createOprationButton, setButtons}
|
||||
}) {
|
||||
const _this = this
|
||||
createUIDom({
|
||||
pagecode: '701004SPJK_L',
|
||||
appcode: '701004SPJK'
|
||||
}, function ({ template, button }) {
|
||||
template.approvalMonitoringList.pagination = true
|
||||
|
||||
let idx = -1, len = template.approvalMonitoringList.items.length
|
||||
while (++idx < len) {
|
||||
let item = template.approvalMonitoringList.items[idx]
|
||||
if (item.attrcode.indexOf('.') > -1) item.attrcode = item.attrcode.split('.')[1]
|
||||
}
|
||||
|
||||
// 查询区参照过滤
|
||||
template.approvalMonitoringSearchArea.items.map(
|
||||
(one, index) => {
|
||||
if (one.attrcode.indexOf('billtype') > -1) { // 单据类型
|
||||
one.refcode = `/uap/refer/riart/billtype/index.js`
|
||||
one.queryCondition = () => ({
|
||||
GridRefActionExt: 'nccloud.web.ssctp.sscbd.ref.sqlbuilder.BilltypeRefSqlBuilder'
|
||||
})
|
||||
} else if (one.attrcode.indexOf('pk_org') > -1) { // 报账单位
|
||||
one.queryCondition = () => ({
|
||||
TreeRefActionExt: 'nccloud.web.ssctp.report.sqlbuilder.OrgRefBuilder',
|
||||
pk_sscunit: _this.props.search.getSearchValByField('approvalMonitoringSearchArea', 'pk_currenttask.pk_sscunit').value.firstvalue,
|
||||
isMutiGroup: 'Y',
|
||||
})
|
||||
} else if (one.attrcode.indexOf('pk_sscunit') > -1) { // 共享中心
|
||||
one.queryCondition = () => ({
|
||||
isNeedPerm: 'N' // 是否受当前登录用户的集团数据权限控制
|
||||
})
|
||||
}
|
||||
}
|
||||
);
|
||||
|
||||
//增加按钮退出人工处理
|
||||
setButtons(button);
|
||||
let event = {
|
||||
label: _this.state.multiLang['701001RWCL-0060'],
|
||||
itemtype: 'customer',
|
||||
className: 'opr',
|
||||
attrcode: 'opr',
|
||||
visible: true,
|
||||
width: '125px',
|
||||
fixed: 'right',
|
||||
render: (text, record, index) => {
|
||||
return createErrorButton({
|
||||
record: record,
|
||||
sucessCallBack: () => {
|
||||
return createOprationButton(['ManualReturn'], {
|
||||
area: "approvalMonitoringList",
|
||||
buttonLimit: 3,
|
||||
onButtonClick: (props, btnKey) => {
|
||||
_this.selectedRow = record;
|
||||
_this.selectedIdx = index;
|
||||
_this.headerBtnClick()
|
||||
}
|
||||
})
|
||||
}
|
||||
})
|
||||
}
|
||||
};
|
||||
template.approvalMonitoringList.items.push(event);
|
||||
|
||||
setMeta(template);
|
||||
// 单据号列自定义
|
||||
setTableRender('approvalMonitoringList', "billno", (text, record, index) => {
|
||||
return (
|
||||
<a
|
||||
className="billnoa"
|
||||
onClick={() => logicalOpenBill.call(_this, record)}
|
||||
>{record.billno.value}</a>
|
||||
)
|
||||
})
|
||||
|
||||
setTableRender('approvalMonitoringList', "resultsflag", (text, record, index) => {
|
||||
return (
|
||||
record.resultsflag.value === 'Y' ?
|
||||
<i className='iconfont icon-wancheng resultsflag-success'></i> :
|
||||
<i className='iconfont icon-shibai resultsflag-failure'></i>
|
||||
)
|
||||
})
|
||||
});
|
||||
}
|
||||
|
||||
/*pmFWCFu5nhKkBzYmrkBaka23LzwyeVw+yP0Qu3SWeVg=*/
|
|
@ -0,0 +1,196 @@
|
|||
/*0YgIFuXJoC2x+5JNXKiUO11ZXLxRDpeZUyfdJGHH3Ew=*/
|
||||
/* eslint-disable no-console */
|
||||
|
||||
import {
|
||||
requestPromise,
|
||||
setStatePromise
|
||||
} from 'ssccommon/utils/asyncFunctions.js';
|
||||
|
||||
import { toast } from "nc-lightapp-front";
|
||||
import sscOpenTo from 'ssccommon/utils/sscOpenTo';
|
||||
|
||||
|
||||
/**
|
||||
* @method logicalSearchList 查询区查询按钮点击回调
|
||||
* @param {Array} conditions 查询区所有字段值
|
||||
* @return {Undefined} 无返回值
|
||||
*/
|
||||
async function logicalSearchList(querycondition, allpks = false) {
|
||||
try {
|
||||
|
||||
const result = await requestPromise({
|
||||
url: `/nccloud/ssctp/sscapv/ApproveMonitorQryAction.do`,
|
||||
data: allpks ? { pks: allpks } : {
|
||||
querycondition,
|
||||
pagecode: `701004SPJK_L`,
|
||||
queryAreaCode: `approvalMonitoringSearchArea`,
|
||||
querytype: `tree`,
|
||||
oid: `1001ZG100000000010NY`
|
||||
},
|
||||
});
|
||||
|
||||
const { data } = result
|
||||
if (allpks) { // 翻页
|
||||
this.props.table.setAllTableData('approvalMonitoringList', {
|
||||
rows: data ? data.data.rows : []
|
||||
})
|
||||
} else { // 查询区查询
|
||||
this.props.table.setAllTableData('approvalMonitoringList', {
|
||||
rows: data ? data.data.rows : [],
|
||||
pageInfo: {
|
||||
pageIndex: 0,
|
||||
pageSize: 10,
|
||||
totalPage: data ? Math.ceil(data.pks.length / 10) : 0,
|
||||
total: data ? data.pks.length : 0
|
||||
},
|
||||
allpks: data ? data.pks : []
|
||||
})
|
||||
this.pubMessage.querySuccess((data ? data.pks : []).length);
|
||||
}
|
||||
|
||||
this.setState({ disabled: true })
|
||||
|
||||
} catch (e) {
|
||||
console.error(e)
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* @method logicalSearchAreaAfterEvent 查询区编辑后事件
|
||||
* @param {String} attrcode 当前操作项对应键值
|
||||
* @param {String || Object} values 当前操作项对应字段值
|
||||
* @param {String} area 查询区区域id
|
||||
* @return {Undefined} 无返回值
|
||||
*/
|
||||
async function logicalSearchAreaAfterEvent(attrcode, values, area) {
|
||||
console.log('logicalSearchAreaAfterEvent: ', attrcode, values, area);
|
||||
}
|
||||
|
||||
/**
|
||||
* @method logicalManualReturn 退回人工处理
|
||||
* @return {Undefined} 无返回值
|
||||
*/
|
||||
async function logicalManualReturn() {
|
||||
const { state: { modalVal, multiLang }, props: {
|
||||
table: { getCheckedRows, updateDataByIndexs, selectAllRows, },
|
||||
} } = this
|
||||
// 校验 退回原因
|
||||
if (!modalVal) return toast({
|
||||
color: 'warning',
|
||||
title: multiLang['701004SPJK_007'],
|
||||
duration: 3
|
||||
})
|
||||
|
||||
const checkedRows = [this.selectedRow];//getCheckedRows('approvalMonitoringList')
|
||||
// 入参
|
||||
const filterRows = checkedRows.filter(e => {
|
||||
return !(e.resultsflag.value === 'N' && e.expuntreated.value === 'N') && !e.workinggroupname.value
|
||||
})
|
||||
|
||||
const pks = filterRows.map(e => e.pk_currenttask.value),
|
||||
billtypecodes = filterRows.map(e => e.billtypecode.value),
|
||||
busiids = filterRows.map(e => e.busiid.value),
|
||||
transtypecodes = filterRows.map(e => e.transtypecode.value),
|
||||
monitorPks = filterRows.map(e => e.pk_approvemonitor.value)
|
||||
|
||||
const payload = {
|
||||
reason: modalVal,
|
||||
pks,
|
||||
billtypecodes,
|
||||
busiids,
|
||||
transtypecodes,
|
||||
monitorPks,
|
||||
}
|
||||
// 所选单据已转过人工处理,不能再进进行人工处理。
|
||||
if (pks.length === 0) return toast({
|
||||
color: 'warning',
|
||||
title: multiLang['701004SPJK_012'],
|
||||
duration: 3
|
||||
})
|
||||
// 退回处理
|
||||
try {
|
||||
const modules = this.selectedRow.module.value || "";
|
||||
const result = await requestPromise({
|
||||
url: `/nccloud/${modules}/ssctp/sscapv/TransToManualAction.do`,
|
||||
data: payload,
|
||||
});
|
||||
|
||||
if (!result) return
|
||||
|
||||
const {
|
||||
data: {
|
||||
message, color, rows,
|
||||
},
|
||||
} = result
|
||||
|
||||
toast({
|
||||
color,
|
||||
title: message,
|
||||
duration: 3
|
||||
})
|
||||
|
||||
await setStatePromise.call(this, { showCheckModal: false, modalVal: '' }) // 重置弹出框
|
||||
|
||||
// 刷新列表
|
||||
const newRows = [{
|
||||
index: this.selectedIdx, data: rows[0],
|
||||
}]
|
||||
|
||||
updateDataByIndexs('approvalMonitoringList', newRows)
|
||||
selectAllRows('approvalMonitoringList', false)
|
||||
|
||||
} catch (e) {
|
||||
toast({
|
||||
color: 'warning',
|
||||
title: multiLang['701004SPJK_010'],
|
||||
content: e.data,
|
||||
duration: 3
|
||||
})
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* @method logicalOpenBill 单据编码点击打开单据
|
||||
* @param {Object} record 当前行数据
|
||||
* @return {Undefined} 无返回值
|
||||
*/
|
||||
async function logicalOpenBill(record) {
|
||||
const { billtypecode, transtypecode, busiid, pk_group } = record
|
||||
// 打开单据
|
||||
try {
|
||||
|
||||
const result = await requestPromise({
|
||||
url: `/nccloud/sscrp/rpbill/BrowseBillAction.do`,
|
||||
data: {
|
||||
billtypeCode: billtypecode.value,
|
||||
transtypeCode: transtypecode.value,
|
||||
billid: busiid.value,
|
||||
pk_group: pk_group.value
|
||||
},
|
||||
});
|
||||
const { data: { data, url, system } } = result
|
||||
sscOpenTo(this.props, system, [
|
||||
url,
|
||||
{
|
||||
...data,
|
||||
scene: 'bzcx'
|
||||
}, null,
|
||||
{
|
||||
pk_group: record.pk_group.value
|
||||
}
|
||||
])
|
||||
|
||||
|
||||
} catch (e) {
|
||||
console.error(e)
|
||||
}
|
||||
}
|
||||
|
||||
export {
|
||||
logicalSearchList,
|
||||
logicalSearchAreaAfterEvent,
|
||||
logicalManualReturn,
|
||||
logicalOpenBill,
|
||||
};
|
||||
|
||||
/*0YgIFuXJoC2x+5JNXKiUO11ZXLxRDpeZUyfdJGHH3Ew=*/
|
|
@ -0,0 +1,8 @@
|
|||
/*FDKFkr+TYgGKTTudQv9suM5TObrl0kaUnLjqLMCkTsQ=*/
|
||||
import React, { Component } from 'react';
|
||||
import ReactDOM from 'react-dom';
|
||||
import ApprovalMonitoring from './approvalMonitoring.js';
|
||||
|
||||
ReactDOM.render(<ApprovalMonitoring />, document.querySelector("#app"));
|
||||
|
||||
/*FDKFkr+TYgGKTTudQv9suM5TObrl0kaUnLjqLMCkTsQ=*/
|
|
@ -0,0 +1,35 @@
|
|||
#approval-monitoring {
|
||||
.fuzzyquery {
|
||||
min-width: 200px;
|
||||
}
|
||||
|
||||
.billnoa {
|
||||
cursor: pointer;
|
||||
}
|
||||
|
||||
.resultsflag-success,
|
||||
.resultsflag-failure {
|
||||
width: 8px;
|
||||
height: 8px;
|
||||
}
|
||||
|
||||
.resultsflag-failure {
|
||||
color: #e14c46;
|
||||
}
|
||||
|
||||
.resultsflag-success {
|
||||
color: #7dac42;
|
||||
}
|
||||
|
||||
.u-table-fixed-right {
|
||||
.opr {
|
||||
.single-line-and-ellipsis {
|
||||
text-overflow: initial;
|
||||
}
|
||||
}
|
||||
}
|
||||
.error-flag {
|
||||
max-width: 28px !important;
|
||||
}
|
||||
|
||||
}
|
|
@ -0,0 +1,48 @@
|
|||
/*Mq+ry/aXt/6nN0mNqW5qEIFeSGycgB9gi2ynbY6bvYw=*/
|
||||
import {ajax } from 'nc-lightapp-front'
|
||||
|
||||
let requestApiOverwrite = {
|
||||
queryLastPeriodAction: (opt) => {
|
||||
ajax({
|
||||
url: '/nccloud/ssctp/ssccheck/querylastperiodaction.do',
|
||||
data: opt.data,
|
||||
success: (data) => {
|
||||
opt.success(data)
|
||||
}
|
||||
})
|
||||
},
|
||||
//联查条件处理
|
||||
linkQueryConditionAction: (opt) => {
|
||||
ajax({
|
||||
url: '/nccloud/ssctp/ssccheck/LinkQueryConditionAction.do',
|
||||
data: opt.data,
|
||||
success: (data) => {
|
||||
opt.success(data)
|
||||
}
|
||||
})
|
||||
},
|
||||
// 查看单据
|
||||
openBill: opt => {
|
||||
ajax({
|
||||
url: '/nccloud/ssctp/sscbd/LinkBillAction.do',
|
||||
data: opt.data,
|
||||
success: data => {
|
||||
opt.success(data);
|
||||
}
|
||||
});
|
||||
},
|
||||
|
||||
// 查看单据
|
||||
queryBill: opt => {
|
||||
ajax({
|
||||
url: '/nccloud/ssctp/ssccheck/LinkBillQueryAction.do',
|
||||
data: opt.data,
|
||||
success: data => {
|
||||
opt.success(data);
|
||||
}
|
||||
});
|
||||
}
|
||||
}
|
||||
|
||||
export default requestApiOverwrite
|
||||
/*Mq+ry/aXt/6nN0mNqW5qEIFeSGycgB9gi2ynbY6bvYw=*/
|
|
@ -0,0 +1,147 @@
|
|||
/*R/0Z33+J35EX9fEUkfZBCtGpOqeYqOfn+XegCK8k930=*/
|
||||
import {ajax, viewModel} from 'nc-lightapp-front'
|
||||
import requestApi from './requestApi'
|
||||
let { setGlobalStorage, getGlobalStorage, removeGlobalStorage } = viewModel;
|
||||
class pubMessage {
|
||||
constructor(props) {
|
||||
this.props = props;
|
||||
}
|
||||
//参照过滤
|
||||
disposeSearch (meta, props) {
|
||||
let items = meta['light_report'].items
|
||||
items.forEach((item) => {
|
||||
|
||||
if (item.attrcode == 'pk_org') {
|
||||
item.queryCondition = () => {
|
||||
let orgRefBuilder = 'nccloud.web.ssctp.report.sqlbuilder.OrgRefBuilder';
|
||||
let data = props.search.getSearchValByField('light_report', 'pk_sscunit').value.firstvalue;
|
||||
return { pk_sscunit: data,isMutiGroup:'Y', TreeRefActionExt:orgRefBuilder};
|
||||
};
|
||||
}else if (item.attrcode == 'pk_dept') {
|
||||
item.queryCondition = () => {
|
||||
let data = props.search.getSearchValByField('light_report', 'pk_org').value.firstvalue;
|
||||
return { pk_org: data};
|
||||
};
|
||||
}else if (item.attrcode == 'pk_transtype') {
|
||||
item.queryCondition = () => {
|
||||
let transtypeRefBuilder = 'nccloud.web.ssctp.report.sqlbuilder.TranstypeRefBuilder';
|
||||
let data = props.search.getSearchValByField('light_report', 'pk_busiunit').value.firstvalue;
|
||||
return { pk_busiunit: data, GridRefActionExt:transtypeRefBuilder};
|
||||
};
|
||||
}else if (item.attrcode == 'pk_busiunit') {
|
||||
//业务范围参照
|
||||
item.queryCondition = () => {
|
||||
let busiunitRefBuilder = 'nccloud.web.ssctp.report.sqlbuilder.BusiunitRefBuilder';
|
||||
let pk_sscunit = props.search.getSearchValByField('light_report', 'pk_sscunit').value.firstvalue;
|
||||
let pk_org = props.search.getSearchValByField('light_report', 'pk_org').value.firstvalue;
|
||||
return { pk_sscunit: pk_sscunit,pk_org: pk_org, GridRefActionExt:busiunitRefBuilder};
|
||||
};
|
||||
}
|
||||
|
||||
})
|
||||
return meta; // 处理后的过滤参照返回给查询区模板
|
||||
}
|
||||
|
||||
/**
|
||||
*
|
||||
* @param items: 查询区查询数据,如需拓展查询区参数,请返回与items相同格式的查询数据
|
||||
*/
|
||||
expandSearchVal (items) {
|
||||
//目前添加了查询条件后台查询不到
|
||||
// let obj = {
|
||||
// field: 'reportType',
|
||||
// datatype: '204',
|
||||
// display: '报表类型',
|
||||
// isIncludeSub: false,
|
||||
// oprtype: '=',
|
||||
// value: {firstvalue: 'fullprocess',secondvalue:''}
|
||||
// }
|
||||
// items.conditions.push(obj)
|
||||
return items
|
||||
}
|
||||
|
||||
setDefaultVal(searchId, props) {
|
||||
// props.search.setSearchValByField('light_report', 'reporttype', {firstvalue: 'fullprocess',secondvalue:''});
|
||||
}
|
||||
|
||||
/**
|
||||
* props: props
|
||||
* searchId: 查询区需要的searchId参数
|
||||
* field: 编辑后的key
|
||||
* val: 编辑后的value
|
||||
*/
|
||||
onAfterEvent (props, searchId, field, val) {
|
||||
if("cur_period" == field){
|
||||
var cur_period = props.search.getSearchValByField(searchId, 'cur_period' );
|
||||
requestApi.queryPrePeriodAction({
|
||||
data: {
|
||||
cur_period: cur_period.value
|
||||
},
|
||||
success: (data) => {
|
||||
props.search.setSearchValByField('light_report', 'pre_period', data.data);
|
||||
}
|
||||
})
|
||||
} else if ("pk_sscunit" == field) {
|
||||
props.search.setSearchValByField('light_report', 'pk_org', "");
|
||||
props.search.setSearchValByField('light_report', 'pk_busiunit', "");
|
||||
props.search.setSearchValByField('light_report', 'pk_transtype', "");
|
||||
}
|
||||
// else if("pk_busiunit" == field){
|
||||
// if(val && val.length>1){
|
||||
// //业务范围多选时,交易类型不可选择
|
||||
// props.search.setSearchValByField('light_report', 'pk_transtype', []);
|
||||
// props.search.setDisabledByField('light_report','pk_transtype',true);
|
||||
// }else{
|
||||
// props.search.setDisabledByField('light_report','pk_transtype',false);
|
||||
// }
|
||||
// }
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* isRange: 查询后数据区域内点击单元格按钮可操作。如需要像升降序按钮那样,则设置 disabled={isRange}属性
|
||||
* data: 表格数据
|
||||
* coords: 选中的单元格
|
||||
*/
|
||||
CreateNewSearchArea (isRange, data, coords) {
|
||||
// button区域业务端自定义的新增按钮
|
||||
//return <NCButton disabled={isRange} className="btn" shape="border">新增按钮</NCButton>
|
||||
}
|
||||
|
||||
/**
|
||||
* transSaveObject: 业务端处理的transSaveObject参数
|
||||
* obj: 点击联查下拉的item信息
|
||||
* data: 联查需要的参数
|
||||
* props: 平台props
|
||||
* url: 平台openTo第一个参数
|
||||
* urlParams: 平台openTo第二个参数
|
||||
* sessonKey: sessionStorage的key
|
||||
*/
|
||||
setConnectionSearch(transSaveObject, obj, data, props, url, urlParams, sessonKey) {
|
||||
setGlobalStorage('sessionStorage', sessonKey, transSaveObject); //处理好的transSaveObject放到浏览器内存中,必须,跳转报表页面会用到
|
||||
if (obj.key == '001'){
|
||||
let pkCode = urlParams.reportId;
|
||||
let defaultCallBack = (res) => {
|
||||
if (res.success) {
|
||||
props.openTo(res.data.url, {
|
||||
...res.data,
|
||||
status: 'browse'
|
||||
});
|
||||
}
|
||||
};
|
||||
ajax({
|
||||
url: '/nccloud/erm/expdetail/LinkBillAction.do',
|
||||
data: {
|
||||
data,
|
||||
pkCode
|
||||
},
|
||||
success: defaultCallBack
|
||||
})
|
||||
}
|
||||
if(obj.key == '002'||obj.key == '003'||obj.key == '004'){
|
||||
props.openTo(url, urlParams);
|
||||
}
|
||||
}
|
||||
}
|
||||
export default pubMessage
|
||||
/*R/0Z33+J35EX9fEUkfZBCtGpOqeYqOfn+XegCK8k930=*/
|
|
@ -0,0 +1,119 @@
|
|||
/*FZzVZZvhIN2fe6RNx+F1buKXSummElYTYZye9SRpouzjIjxuGqCRKrrPEtQ2MGMC*/
|
||||
import { ajax, viewModel } from 'nc-lightapp-front'
|
||||
import requestApi from './requestApi'
|
||||
let { setGlobalStorage, getGlobalStorage, removeGlobalStorage } = viewModel;
|
||||
|
||||
|
||||
class pubMessage {
|
||||
constructor(props) {
|
||||
this.props = props;
|
||||
}
|
||||
//参照过滤
|
||||
disposeSearch(meta, props) {
|
||||
let items = meta['light_report'].items
|
||||
items.forEach((item) => {
|
||||
if (item.attrcode == 'pk_org') {
|
||||
item.queryCondition = () => {
|
||||
let orgRefBuilder = 'nccloud.web.ssctp.report.sqlbuilder.OrgRefBuilder';
|
||||
let data = props.search.getSearchValByField('light_report', 'pk_sscunit').value.firstvalue;
|
||||
return { pk_sscunit: data,isMutiGroup:'Y', TreeRefActionExt:orgRefBuilder};
|
||||
};
|
||||
} else if(item.attrcode == 'problemMatterId'){
|
||||
item.queryCondition = () => {
|
||||
let data = props.search.getSearchValByField('light_report', 'pk_sscunit').value.firstvalue;
|
||||
return {pk_sscunit : data,all:'Y'};
|
||||
}
|
||||
}
|
||||
|
||||
})
|
||||
return meta; // 处理后的过滤参照返回给查询区模板
|
||||
}
|
||||
|
||||
/**
|
||||
*
|
||||
* @param items: 查询区查询数据,如需拓展查询区参数,请返回与items相同格式的查询数据
|
||||
*/
|
||||
expandSearchVal(items) {
|
||||
//目前添加了查询条件后台查询不到
|
||||
// let obj = {
|
||||
// field: 'reportType',
|
||||
// datatype: '204',
|
||||
// display: '报表类型',
|
||||
// isIncludeSub: false,
|
||||
// oprtype: '=',
|
||||
// value: {firstvalue: 'fullprocess',secondvalue:''}
|
||||
// }
|
||||
// items.conditions.push(obj)
|
||||
return items
|
||||
}
|
||||
|
||||
setDefaultVal(searchId, props) {
|
||||
// props.search.setSearchValByField('light_report', 'reporttype', {firstvalue: 'fullprocess',secondvalue:''});
|
||||
}
|
||||
|
||||
/**
|
||||
* props: props
|
||||
* searchId: 查询区需要的searchId参数
|
||||
* field: 编辑后的key
|
||||
* val: 编辑后的value
|
||||
*/
|
||||
onAfterEvent(props, searchId, field, val) {
|
||||
if ("current_date" == field) {
|
||||
var current_date = props.search.getSearchValByField(searchId, 'current_date');
|
||||
if (current_date.value.firstvalue !== "" && current_date.value.secondvalue !== "") {
|
||||
requestApi.queryLastPeriodAction({
|
||||
data: {
|
||||
current_date: current_date.value
|
||||
},
|
||||
success: (data) => {
|
||||
props.search.setSearchValByField('light_report', 'last_date', data.data);
|
||||
}
|
||||
})
|
||||
}
|
||||
}
|
||||
|
||||
if("pk_sscunit" == field){
|
||||
props.search.setSearchValByField('light_report', 'problemMatterId', '');
|
||||
props.search.setSearchValByField('light_report', 'pk_org', '');
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* isRange: 查询后数据区域内点击单元格按钮可操作。如需要像升降序按钮那样,则设置 disabled={isRange}属性
|
||||
* data: 表格数据
|
||||
* coords: 选中的单元格
|
||||
*/
|
||||
CreateNewSearchArea(isRange, data, coords) {
|
||||
// button区域业务端自定义的新增按钮
|
||||
//return <NCButton disabled={isRange} className="btn" shape="border">新增按钮</NCButton>
|
||||
}
|
||||
|
||||
/**
|
||||
* transSaveObject: 业务端处理的transSaveObject参数
|
||||
* obj: 点击联查下拉的item信息
|
||||
* data: 联查需要的参数
|
||||
* props: 平台props
|
||||
* url: 平台openTo第一个参数
|
||||
* urlParams: 平台openTo第二个参数
|
||||
* sessonKey: sessionStorage的key
|
||||
*/
|
||||
setConnectionSearch(transSaveObject, obj, data, props, url, urlParams, sessonKey) {
|
||||
let pkcode = data.appcode;
|
||||
let field = data.fldName;
|
||||
//data.transSaveObject ='';
|
||||
setGlobalStorage('sessionStorage', sessonKey, transSaveObject); //处理好的transSaveObject放到浏览器内存中,必须,跳转报表页面会用到
|
||||
requestApi.linkQueryConditionAction({
|
||||
data: {
|
||||
data,
|
||||
pkcode,
|
||||
field
|
||||
},
|
||||
success: (data) => {
|
||||
this.linkQuery.show(data.data);
|
||||
}
|
||||
})
|
||||
}
|
||||
}
|
||||
export default pubMessage
|
||||
/*FZzVZZvhIN2fe6RNx+F1buKXSummElYTYZye9SRpouzjIjxuGqCRKrrPEtQ2MGMC*/
|
|
@ -0,0 +1 @@
|
|||
SSC_SSCCLOUD_Front init
|
After Width: | Height: | Size: 1.3 KiB |
After Width: | Height: | Size: 870 B |
After Width: | Height: | Size: 1.4 KiB |
After Width: | Height: | Size: 1.4 KiB |
After Width: | Height: | Size: 1.5 KiB |
After Width: | Height: | Size: 1.0 KiB |
After Width: | Height: | Size: 5.6 KiB |
After Width: | Height: | Size: 8.5 KiB |
After Width: | Height: | Size: 591 B |
After Width: | Height: | Size: 3.9 KiB |
After Width: | Height: | Size: 4.3 KiB |
After Width: | Height: | Size: 5.3 KiB |
After Width: | Height: | Size: 4.1 KiB |
After Width: | Height: | Size: 5.6 KiB |
After Width: | Height: | Size: 500 B |
After Width: | Height: | Size: 469 B |
After Width: | Height: | Size: 584 B |
After Width: | Height: | Size: 673 B |
After Width: | Height: | Size: 563 B |
After Width: | Height: | Size: 3.1 KiB |
After Width: | Height: | Size: 9.6 KiB |
After Width: | Height: | Size: 3.1 KiB |
After Width: | Height: | Size: 9.6 KiB |
After Width: | Height: | Size: 3.2 KiB |
After Width: | Height: | Size: 9.8 KiB |
After Width: | Height: | Size: 3.1 KiB |
After Width: | Height: | Size: 9.6 KiB |
After Width: | Height: | Size: 3.1 KiB |
After Width: | Height: | Size: 9.6 KiB |
|
@ -0,0 +1,25 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<!-- Generator: Adobe Illustrator 21.0.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
|
||||
<svg version="1.1" id="图层_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
|
||||
viewBox="0 0 56 56" style="enable-background:new 0 0 56 56;" xml:space="preserve">
|
||||
<style type="text/css">
|
||||
.st0{fill:#A0ACB6;}
|
||||
.st1{fill:#54698D;}
|
||||
</style>
|
||||
<title>作业调度</title>
|
||||
<desc>Created with Sketch.</desc>
|
||||
<g id="数据查询-2" transform="translate(3.000000, 4.000000)">
|
||||
<g id="数据查询" transform="translate(-0.000000, -0.000000)">
|
||||
<path id="形状" class="st0" d="M39.4,13.5H8.3c-1.1,0-2.1,0.9-2.1,2.1v23.9c0,1.1,0.9,2.1,2.1,2.1h20.6v6H0.8v-41
|
||||
c0-2.9,2.3-5.2,5.2-5.2h35.7c2.9,0,5.2,2.3,5.2,5.2v15h-5.4v-6C41.5,14.4,40.6,13.5,39.4,13.5z M12.7,19.5H35c0.6,0,1,0.5,1,1v1.8
|
||||
c0,0.6-0.5,1-1,1H12.7c-0.6,0-1-0.5-1-1v-1.8C11.6,20,12.1,19.5,12.7,19.5z M12.7,28.6h14.2c0.6,0,1,0.5,1,1v1.8c0,0.6-0.5,1-1,1
|
||||
H12.7c-0.6,0-1-0.5-1-1v-1.8C11.6,29,12.1,28.6,12.7,28.6z M6.2,7.5v0.9c0,0.6,0.5,1,1,1H16c0.6,0,1-0.5,1-1V7.5c0-0.6-0.5-1-1-1
|
||||
H7.2C6.7,6.4,6.2,6.9,6.2,7.5z"/>
|
||||
<g id="编组-9" transform="translate(31.401520, 25.071299)">
|
||||
<path id="形状结合" class="st1" d="M16.9,15.4l4.4,4.4l-2.6,2.6L14.3,18C10.3,20.6,5,19.7,2,16S-0.6,7,2.7,3.7
|
||||
s8.7-3.6,12.4-0.5S19.6,11.4,16.9,15.4z M9.2,15.8c3.1,0,5.5-2.5,5.5-5.5s-2.5-5.5-5.5-5.5s-5.5,2.5-5.5,5.5S6.2,15.8,9.2,15.8z"
|
||||
/>
|
||||
</g>
|
||||
</g>
|
||||
</g>
|
||||
</svg>
|
After Width: | Height: | Size: 1.5 KiB |
|
@ -0,0 +1,24 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<!-- Generator: Adobe Illustrator 21.0.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
|
||||
<svg version="1.1" id="图层_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
|
||||
viewBox="0 0 56 56" style="enable-background:new 0 0 56 56;" xml:space="preserve">
|
||||
<style type="text/css">
|
||||
.st0{fill:#A0ACB6;}
|
||||
.st1{fill:#54698D;}
|
||||
</style>
|
||||
<title>我的作业</title>
|
||||
<desc>Created with Sketch.</desc>
|
||||
<g id="编组" transform="translate(4.000000, 4.000000)">
|
||||
<path id="形状结合" class="st0" d="M44.7,25.2C43,24.5,41.1,24,39.1,24c-7.5,0-13.6,6-13.6,13.4c0,3.3,1.2,6.4,3.3,8.7H4.2
|
||||
C1.9,46.1,0,44.3,0,42V9.4h44.7C44.7,9.4,44.7,25.2,44.7,25.2z M8.5,17.8c-0.6,0-1,0.5-1,1v2.1c0,0.6,0.5,1,1,1h20.3
|
||||
c0.6,0,1-0.5,1-1v-2.1c0-0.6-0.5-1-1-1H8.5z M8.5,27.2c-0.6,0-1,0.5-1,1v2.1c0,0.6,0.5,1,1,1h10.7c0.6,0,1-0.5,1-1v-2.1
|
||||
c0-0.6-0.5-1-1-1H8.5z"/>
|
||||
<path id="矩形" class="st0" d="M3.1,1h38.5c1.7,0,3.1,1.4,3.1,3.1v2.1H0V4.1C0,2.4,1.4,1,3.1,1z"/>
|
||||
<path id="形状结合_1_" class="st1" d="M39.2,48.8c-6.3,0-11.5-5.1-11.5-11.3s5.1-11.3,11.5-11.3s11.5,5.1,11.5,11.3
|
||||
S45.5,48.8,39.2,48.8z M43,38.7c-0.9-0.4-0.6-0.1-1.7-0.5c-1.1-0.4-1.4-0.6-1.4-0.6l0-1c0,0,0.4-0.3,0.5-1.2
|
||||
c0.3,0.1,0.3-0.3,0.4-0.5c0-0.2,0.2-0.9-0.2-0.8c0.1-0.5,0.1-0.9,0.1-1.1c-0.1-0.8-0.6-1.6-2.1-1.6c-1.2,0.1-2,0.9-2.1,1.6
|
||||
c0,0.2,0,0.6,0.1,1.1c-0.3-0.1-0.2,0.6-0.2,0.8c0,0.2,0.1,0.6,0.4,0.5c0.1,0.9,0.5,1.2,0.5,1.2l0,1c0,0-0.3,0.1-1.4,0.6
|
||||
c-1.1,0.4-0.8,0.1-1.7,0.5c-1.4,0.7-1.4,2.5-1.4,2.5v0c0,0.3,0.2,0.5,0.5,0.5h10.4c0.3,0,0.5-0.2,0.5-0.5v0
|
||||
C44.4,41.2,44.4,39.3,43,38.7z"/>
|
||||
</g>
|
||||
</svg>
|
After Width: | Height: | Size: 1.6 KiB |
|
@ -0,0 +1,25 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<!-- Generator: Adobe Illustrator 21.0.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
|
||||
<svg version="1.1" id="图层_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
|
||||
viewBox="0 0 56 56" style="enable-background:new 0 0 56 56;" xml:space="preserve">
|
||||
<style type="text/css">
|
||||
.st0{fill:#A0ACB6;}
|
||||
.st1{fill:#54698D;}
|
||||
</style>
|
||||
<title>作业调度</title>
|
||||
<desc>Created with Sketch.</desc>
|
||||
<g id="数据查询-2" transform="translate(3.000000, 4.000000)">
|
||||
<g id="数据查询" transform="translate(-0.000000, -0.000000)">
|
||||
<path id="形状" class="st0" d="M39.4,13.5H8.3c-1.1,0-2.1,0.9-2.1,2.1v23.9c0,1.1,0.9,2.1,2.1,2.1h20.6v6H0.8v-41
|
||||
c0-2.9,2.3-5.2,5.2-5.2h35.7c2.9,0,5.2,2.3,5.2,5.2v15h-5.4v-6C41.5,14.4,40.6,13.5,39.4,13.5z M12.7,19.5H35c0.6,0,1,0.5,1,1v1.8
|
||||
c0,0.6-0.5,1-1,1H12.7c-0.6,0-1-0.5-1-1v-1.8C11.6,20,12.1,19.5,12.7,19.5z M12.7,28.6h14.2c0.6,0,1,0.5,1,1v1.8c0,0.6-0.5,1-1,1
|
||||
H12.7c-0.6,0-1-0.5-1-1v-1.8C11.6,29,12.1,28.6,12.7,28.6z M6.2,7.5v0.9c0,0.6,0.5,1,1,1H16c0.6,0,1-0.5,1-1V7.5c0-0.6-0.5-1-1-1
|
||||
H7.2C6.7,6.4,6.2,6.9,6.2,7.5z"/>
|
||||
<g id="编组-9" transform="translate(31.401520, 25.071299)">
|
||||
<path id="形状结合" class="st1" d="M16.9,15.4l4.4,4.4l-2.6,2.6L14.3,18C10.3,20.6,5,19.7,2,16S-0.6,7,2.7,3.7
|
||||
s8.7-3.6,12.4-0.5S19.6,11.4,16.9,15.4z M9.2,15.8c3.1,0,5.5-2.5,5.5-5.5s-2.5-5.5-5.5-5.5s-5.5,2.5-5.5,5.5S6.2,15.8,9.2,15.8z"
|
||||
/>
|
||||
</g>
|
||||
</g>
|
||||
</g>
|
||||
</svg>
|
After Width: | Height: | Size: 1.5 KiB |
|
@ -0,0 +1,24 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<!-- Generator: Adobe Illustrator 21.0.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
|
||||
<svg version="1.1" id="图层_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
|
||||
viewBox="0 0 56 56" style="enable-background:new 0 0 56 56;" xml:space="preserve">
|
||||
<style type="text/css">
|
||||
.st0{fill:#A0ACB6;}
|
||||
.st1{fill:#54698D;}
|
||||
</style>
|
||||
<title>我的作业</title>
|
||||
<desc>Created with Sketch.</desc>
|
||||
<g id="编组" transform="translate(4.000000, 4.000000)">
|
||||
<path id="形状结合" class="st0" d="M44.7,25.2C43,24.5,41.1,24,39.1,24c-7.5,0-13.6,6-13.6,13.4c0,3.3,1.2,6.4,3.3,8.7H4.2
|
||||
C1.9,46.1,0,44.3,0,42V9.4h44.7C44.7,9.4,44.7,25.2,44.7,25.2z M8.5,17.8c-0.6,0-1,0.5-1,1v2.1c0,0.6,0.5,1,1,1h20.3
|
||||
c0.6,0,1-0.5,1-1v-2.1c0-0.6-0.5-1-1-1H8.5z M8.5,27.2c-0.6,0-1,0.5-1,1v2.1c0,0.6,0.5,1,1,1h10.7c0.6,0,1-0.5,1-1v-2.1
|
||||
c0-0.6-0.5-1-1-1H8.5z"/>
|
||||
<path id="矩形" class="st0" d="M3.1,1h38.5c1.7,0,3.1,1.4,3.1,3.1v2.1H0V4.1C0,2.4,1.4,1,3.1,1z"/>
|
||||
<path id="形状结合_1_" class="st1" d="M39.2,48.8c-6.3,0-11.5-5.1-11.5-11.3s5.1-11.3,11.5-11.3s11.5,5.1,11.5,11.3
|
||||
S45.5,48.8,39.2,48.8z M43,38.7c-0.9-0.4-0.6-0.1-1.7-0.5c-1.1-0.4-1.4-0.6-1.4-0.6l0-1c0,0,0.4-0.3,0.5-1.2
|
||||
c0.3,0.1,0.3-0.3,0.4-0.5c0-0.2,0.2-0.9-0.2-0.8c0.1-0.5,0.1-0.9,0.1-1.1c-0.1-0.8-0.6-1.6-2.1-1.6c-1.2,0.1-2,0.9-2.1,1.6
|
||||
c0,0.2,0,0.6,0.1,1.1c-0.3-0.1-0.2,0.6-0.2,0.8c0,0.2,0.1,0.6,0.4,0.5c0.1,0.9,0.5,1.2,0.5,1.2l0,1c0,0-0.3,0.1-1.4,0.6
|
||||
c-1.1,0.4-0.8,0.1-1.7,0.5c-1.4,0.7-1.4,2.5-1.4,2.5v0c0,0.3,0.2,0.5,0.5,0.5h10.4c0.3,0,0.5-0.2,0.5-0.5v0
|
||||
C44.4,41.2,44.4,39.3,43,38.7z"/>
|
||||
</g>
|
||||
</svg>
|
After Width: | Height: | Size: 1.6 KiB |
|
@ -0,0 +1,33 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<!-- Generator: Adobe Illustrator 21.0.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
|
||||
<svg version="1.1" id="图层_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
|
||||
viewBox="0 0 56 56" style="enable-background:new 0 0 56 56;" xml:space="preserve">
|
||||
<style type="text/css">
|
||||
.st0{fill:#FFFFFF;}
|
||||
.st1{fill:#334764;}
|
||||
.st2{opacity:0.853;fill:#FEB9B9;enable-background:new ;}
|
||||
</style>
|
||||
<title>简约-作业调度</title>
|
||||
<desc>Created with Sketch.</desc>
|
||||
<g id="编组" transform="translate(8.000000, 6.000000)">
|
||||
<path id="矩形" class="st0" d="M4.6,3h31.9c1.7,0,3,1.3,3,3v33.5c0,1.7-1.3,3-3,3c-0.4,0-0.7-0.1-1.1-0.2l-15.6-6L6.8,42
|
||||
c-1.5,0.7-3.3,0-4-1.5c-0.2-0.4-0.2-0.7-0.3-1.1l-1-33.3C1.5,4.4,2.8,3.1,4.6,3C4.5,3,4.6,3,4.6,3z"/>
|
||||
<g id="sheet_25">
|
||||
<path id="路径" class="st1" d="M5,44.8c-0.5,0-1,0-1.5-0.2c-1.3-0.3-2.3-1.2-3-2.3C0.2,41.5,0,40.6,0,39.8V5.1
|
||||
c0-1.4,0.5-2.7,1.4-3.6C2.3,0.6,3.6,0,5,0h30.8c1.4,0,2.7,0.5,3.5,1.4c0.9,0.9,1.4,2.2,1.4,3.6v12c0,0.5-0.1,0.8-0.4,1.1
|
||||
c-0.3,0.3-0.6,0.4-1.1,0.4c-0.4,0-0.8-0.1-1.1-0.4c-0.3-0.3-0.4-0.6-0.4-1.1v-12c0-0.6-0.2-1.1-0.6-1.5c-0.3-0.4-0.8-0.6-1.4-0.6
|
||||
H5c-0.6,0-1.1,0.2-1.4,0.6C3.2,4,3,4.5,3,5.1v34.9c0,0.4,0,0.6,0.2,1c0.2,0.4,0.6,0.8,1.2,1l1.5-0.2L18,35.1
|
||||
c1.5-0.8,3.3-0.8,4.8,0L35,41.7c0.2,0.2,0.6,0.2,1,0.2c0.6,0,1.1-0.2,1.4-0.6c0.3-0.4,0.6-0.9,0.6-1.5V27.6c0-0.5,0.1-0.8,0.4-1.1
|
||||
c0.3-0.3,0.6-0.4,1.1-0.4c0.4,0,0.8,0.1,1.1,0.4c0.3,0.3,0.4,0.6,0.4,1.1v12.3c0,1.4-0.5,2.7-1.4,3.6C38.6,44.4,37.4,45,36,45
|
||||
c-0.8,0-1.6-0.2-2.3-0.7l-12-6.7c-0.3-0.2-0.7-0.3-1-0.3s-0.7,0.1-1,0.3l-12,6.7C6.7,44.6,5.8,44.8,5,44.8L5,44.8z"/>
|
||||
<path id="路径_1_" class="st2" d="M11.1,8.6h19c1.7,0,3.1,1.4,3.1,3.2v18.8c0,1.8-1.4,3.2-3.1,3.2c-0.5,0-0.9-0.2-1.4-0.4
|
||||
l-6.8-3.3c-0.9-0.4-1.9-0.4-2.8,0l-6.6,3.3C10.9,34.1,9,33.6,8.3,32C8.1,31.7,8,31.1,8,30.6V11.8C7.8,10,9.3,8.6,11.1,8.6z"/>
|
||||
<path id="路径_2_" class="st1" d="M12.7,24.2h14.3c0.4,0,0.8,0.1,1.1,0.4c0.3,0.3,0.4,0.6,0.4,1.1c0,0.4-0.2,0.8-0.4,1.1
|
||||
c-0.3,0.3-0.7,0.5-1.1,0.5H12.7c-0.4,0-0.8-0.1-1.1-0.4c-0.3-0.3-0.4-0.6-0.4-1.1s0.1-0.8,0.4-1.1C11.8,24.3,12.2,24.2,12.7,24.2z
|
||||
"/>
|
||||
<path id="路径_3_" class="st1" d="M15.3,14.6l3.8,3.1l6.8-7.2c0.3-0.3,0.7-0.5,1-0.5c0.4,0,0.7,0.2,1,0.5
|
||||
c0.3,0.3,0.4,0.7,0.4,1.1c0,0.4-0.2,0.8-0.5,1.1l-7.7,8.1c-0.3,0.3-0.6,0.5-1,0.5c-0.3,0-0.6-0.2-0.9-0.3l-4.9-4
|
||||
c-0.3-0.2-0.5-0.6-0.5-1c0-0.4,0.1-0.8,0.4-1.1c0.2-0.3,0.6-0.5,1-0.5C14.6,14.2,15,14.3,15.3,14.6z"/>
|
||||
</g>
|
||||
</g>
|
||||
</svg>
|
After Width: | Height: | Size: 2.5 KiB |
|
@ -0,0 +1,37 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<!-- Generator: Adobe Illustrator 21.0.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
|
||||
<svg version="1.1" id="图层_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
|
||||
viewBox="0 0 56 56" style="enable-background:new 0 0 56 56;" xml:space="preserve">
|
||||
<style type="text/css">
|
||||
.st0{fill:#FFFFFF;}
|
||||
.st1{fill:#334764;}
|
||||
.st2{fill:#FEAEAE;}
|
||||
</style>
|
||||
<title>简约-我的作业备份</title>
|
||||
<desc>Created with Sketch.</desc>
|
||||
<g id="编组" transform="translate(6.000000, 6.000000)">
|
||||
<circle id="椭圆形" class="st0" cx="23" cy="11" r="9"/>
|
||||
<path id="路径" class="st0" d="M43.7,39.5c-0.4-2.8-4.1-9.3-4.9-10.2c-3.7-4.2-9.2-6.7-15.4-6.7c-11.7,0-21,9.8-21,22
|
||||
c22.4,0,33.5,0,33.5,0S43.9,40.6,43.7,39.5z"/>
|
||||
<g id="sheet_38">
|
||||
<path id="形状" class="st1" d="M11.9,11.7c0-3.2,1.3-6.1,3.4-8.3c2.1-2.1,5-3.4,8.1-3.4c3.2,0,6,1.3,8.1,3.4s3.4,5,3.4,8.1
|
||||
c0.1,3.2-1.1,6.1-3.2,8.3c-2.1,2.1-5,3.4-8.3,3.4c-3.2,0-6-1.3-8.1-3.4S11.9,14.8,11.9,11.7z M31.6,11.5c0-2.3-0.9-4.3-2.4-5.8
|
||||
c-1.5-1.5-3.5-2.4-5.8-2.4c-2.2,0-4.3,0.9-5.8,2.4c-1.5,1.5-2.4,3.5-2.4,5.8s0.9,4.3,2.4,5.8c1.5,1.5,3.5,2.4,5.8,2.4
|
||||
s4.3-0.9,5.8-2.4C30.7,15.8,31.6,13.7,31.6,11.5z"/>
|
||||
<path id="路径_1_" class="st2" d="M39.3,42.2c0-8.9-6.8-16.1-15.3-16.1S8.7,33.3,8.7,42.2H39.3z"/>
|
||||
<path id="路径_2_" class="st1" d="M43.7,33.4H28.5c-0.4,0-0.7-0.1-0.9-0.3c-0.2-0.2-0.3-0.5-0.3-0.9c0-0.4,0.1-0.7,0.3-0.9
|
||||
s0.5-0.3,0.9-0.3h15.2c0.4,0,0.7,0.1,0.9,0.3s0.3,0.5,0.3,0.9c0,0.4-0.1,0.7-0.3,0.9C44.4,33.3,44.1,33.4,43.7,33.4z"/>
|
||||
<path id="形状_1_" class="st1" d="M34.7,30l-5.3,3c-0.4,0.2-0.7,0.3-1,0.3c-0.3-0.1-0.5-0.3-0.8-0.7c-0.2-0.3-0.2-0.6-0.1-0.9
|
||||
c0.1-0.3,0.3-0.6,0.6-0.8l5.3-3c0.4-0.2,0.7-0.3,1-0.3c0.3,0.1,0.5,0.3,0.8,0.7c0.2,0.4,0.3,0.7,0.3,1
|
||||
C35.3,29.6,35.1,29.8,34.7,30z M44.1,39.9l-5.3,3c-0.4,0.2-0.7,0.3-1,0.3c-0.3-0.1-0.5-0.3-0.8-0.7c-0.2-0.4-0.3-0.8-0.3-1.1
|
||||
c0.1-0.3,0.3-0.5,0.7-0.7l5.3-3c0.4-0.2,0.7-0.3,1-0.3c0.3,0.1,0.5,0.3,0.8,0.7c0.2,0.4,0.3,0.7,0.3,1
|
||||
C44.8,39.4,44.5,39.6,44.1,39.9z"/>
|
||||
<path id="路径_3_" class="st1" d="M43.7,39.5H28.5c-0.4,0-0.7-0.1-0.9-0.3s-0.3-0.5-0.3-0.9c0-0.5,0.1-0.8,0.3-1
|
||||
c0.2-0.2,0.6-0.3,1-0.3h15.2c0.4,0,0.7,0.1,0.9,0.3s0.3,0.5,0.3,0.9c0,0.4-0.1,0.7-0.3,0.9S44.1,39.5,43.7,39.5z"/>
|
||||
<path id="路径_4_" class="st1" d="M6.9,26.8c4.2-4.2,10.1-6.9,16.6-6.9c3.4,0,6.7,0.7,9.9,2.2c0.4,0.2,0.7,0.5,0.8,0.9
|
||||
c0.2,0.4,0.2,0.9,0,1.3c-0.2,0.4-0.5,0.7-0.8,0.8c-0.4,0.2-0.9,0.2-1.3,0c-2.7-1.1-5.6-1.9-8.4-1.9c-5.2,0-10,2-13.6,5.2
|
||||
c-3.7,3.3-6.1,8-6.6,13.3h24c0.5,0,0.9,0.2,1.2,0.4c0.3,0.3,0.4,0.7,0.4,1.2c0,0.5-0.2,0.9-0.5,1.1c-0.3,0.3-0.7,0.5-1.2,0.5H1.6
|
||||
c-0.5,0-0.9-0.2-1.2-0.4S0,43.8,0,43.3C0,36.9,2.6,31,6.9,26.8z"/>
|
||||
</g>
|
||||
</g>
|
||||
</svg>
|
After Width: | Height: | Size: 2.7 KiB |
|
@ -0,0 +1 @@
|
|||
<svg id="图层_1" data-name="图层 1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" viewBox="0 0 43.64 52.41"><defs><style>.cls-1{isolation:isolate;}.cls-2,.cls-3,.cls-4{fill-rule:evenodd;}.cls-2{fill:url(#未命名的渐变);}.cls-3{fill:url(#未命名的渐变_2);}.cls-4{fill:#ffdedc;}</style><linearGradient id="未命名的渐变" x1="-269.84" y1="417.25" x2="-269.84" y2="416.25" gradientTransform="matrix(41.57, 0, 0, -47.38, 11244.89, 19772.32)" gradientUnits="userSpaceOnUse"><stop offset="0" stop-color="#f7a48b"/><stop offset="1" stop-color="#f8426a"/></linearGradient><linearGradient id="未命名的渐变_2" x1="-267.34" y1="414.3" x2="-267.34" y2="413.3" gradientTransform="matrix(30.23, 0, 0, -34.29, 8110.63, 14215.66)" gradientUnits="userSpaceOnUse"><stop offset="0" stop-color="#ffa993"/><stop offset="1" stop-color="#ff5370"/></linearGradient></defs><title>青春-作业调度</title><g id="青春-作业调度"><g id="已执行"><image id="Bitmap" class="cls-1" width="57" height="26" transform="translate(0 32.5) scale(0.77)" xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADoAAAAbCAYAAAAtS5y7AAAACXBIWXMAAA50AAAOdAFrJLPWAAAHtElEQVRYR9WYz3LcuBGHv26A5PyxZGu9qlrPZVM5rl5iX8L7Ous8j18hh7xAjvIxlVSq5K3SamVZ1syQBLpzACjNjOXdeP9UKj3FAghwwP74azQBirvz+5nIL13x+fb7OCj/PegnIP7y6vH2b85/PfSbs8ed+v7VJ5z9ZYhfAK1wE8yu82/OHuovLvah3q4+hvzi6ufBf3q+78iLi/3zt6uH82/OH+rTQ7l/CI8Dxcca9wALXDm/PhHeroQvroSvp7Yb4W4Jy6cPIMsPpb548tD2Yf5p0CcL57TW1x+Ko++P4fhJqd/dOMc3cPK0nP/wlfPTc68Po7S9fum8OXO+n26zD/wIqMge4PWJ8MWVcvRcGFbK8oOwmStcCd1CEC8j562w7Ut9PhOaQeC2DNm3wjxAM34MOzZO7ku9G5xjYGydYevc3cCsc6Q6PWycfu1s5s7yg8HK+Rrj9sq5PjHA94EfYA9Cdwfy+kR5uxK+RvnxQ8BUaYeAi7JUxaQcQyPEJMRRGBshJCHVsoCUfoAQPwbNqTiQotOMpZ6jE0cn17bUOCk67eioG+rGnRnixtBm1Iwvn2T+hfHiwjm5tgL7yifYHdADyL5TuueBd+tAOwQWIZI0oikwtAHNBdpRQhQcRbOQs+CiAGgQQhZSEIJV5cMDbMgVTJ2YnRwcq23iRgiOBUcwciqluGEh0w4Zi5loiXVODG3m2SLTX2W63g5hPw7dkmSE4xtlsw40Y4MsGvrUINbgswYZIkEiKQRAEVdIBdqjoCaoFvgkAgYWBLNSnywJqDoCJHEUJwbDrAB6dsQMiQbBACOkjKdEniV8HOnDiHQjzWbk3RqaWOZvSYiHoXugZrsKrInItmHQFskdUVrcO0xasAbxBieiEgGtKhZYtaKqiOAuiAmmD/N511wcNcfVEXHcvaimRUGqimCYJ4SEywg6oj4g0pN8wENPawM+G1mQGC7yrqr7ir45K4kHlLgJWG5orCWFDtMZKjOCdzgdri3iDUZEPCASimKiIIq74F5gTYTpB2BaSrWSNV0pIOYFTBzccDdUHfeMS0YkgVRA70Ei5gomNKMj6oSNMcyNvvP66nE4zLovLoR2JaxR+iHQNJEQG4K3iMxwn+PMEZkhdBgNeAMSwANSVTW0Qk2lFOBaTrqaOCqOW1GzOGUYVU0xcAPJ4BmXEWUE6esDVlRA1JCQSZYZh0Q3zxw9N7oL4e2KfdAStuW9GJMSnwS0D1gXkdxgtIh0iMyAOWYzVFrQBvMCOoWvUlQ1L5COgAvqtV5N3XEcBBzDKeCCYTVscbtXU0iYDahqGcUNs4wyYnFEUyDOAvlKuY7CkmmR80gyAlgvhDAKvShNDiCR7LGolxtUW9xakLYqGhEJkAtombM7kCg4yAGoTKBAmYvldVDemxVUDbcMHsq0cMqDsATaACUxkgOjKN0o5IXQDntIBVSAl8DZSuBC2LSQKYEUhnKBhRqCLliaQlAw05JhTepI9fByjZsgAl4Tkey8t0uT1CQ0XTf11nFyDfvpPi54ErQmOhA0FWdzKP8KwPxOeL8S/noN3x3O0YsL53rpnAAbQJKjuWREzBDPuBhKBsm4Z/BUvHMHFJkSkdRQrXXgk1m39JV5auL3da/ZFslg5ZA6Xw1DUvEHd8Qcc8cbmAP/WDonD+vlfdC/A38G/r12Ym+kzghaYfIIjKADXtJkTRYJLCJSktAunFYwr1mWR0DLOMVRYA/UxFGsAieQBD4APSID2ORTAs1kM+J748fOeRIfeNgFfX3mfItz+U+HhdFnY+gzoU2oDTDNQSupInjCGRCJWM24XkEBqHDuUqbbzjavhOluDFdVxct82YWuoCoZ94QwkmVA6cG3EHrIA6aJPGTabHTZ2Nw6R39yXq8cXj+yqL+8M2atQchYl0jjQLaSXIJTQkVHkAaziBBxKZl2moe4QOY+ZKvXH93r3iZo534BT4UuypZFg3tCNQEjWHmXZt8iPhB0QLvE0GeGZGzv7H5HxKSouyMCpy+d2xPnajCWi0wTRpQ6rjiQIY9IbsgaUQJmARWtClYVwwGUydQFQHAh7yoKoOV8ap1CGcrKyaqq5plgCWeEMKCMqPdoM+BhZBszd2vj+Ylzeu7w2vHDte4Uvttz4/gk876HpoVN7wSMEEckjIwWCBrJooRR8Snr7gD6zyiYHuvaWQOLTqslynpXS1LMsexcRk9EzZiM5JTIjCxCYhwSx12GS9sNW2Bn9yJTmL0SvkW5PFfulspxDqyfBeYpEGNk3CjjLNBtlaxKo4pVz735mfD8lSZ166bRGc0IZvQzo9lmmrmRUmITM4t3mfchs7wzTs+Mv2HwqkaJ+/5+9BD29kK46ZTTqNz9qKyfBZ72whCUURUbhWVX/pMf2VT/Xhaa4uRd72jjNGa02bjpnMW7zPJL4zIZT3vjaOWHkLCr6GS7sC/Phcsz4fJc6b8S0q3w4kQY7oRxI+Sjcm3a/nGQk8VZcTTcOs3caZfO22snHjndD87pmXF67rw+80NIeAwU9mGBe2CA2/ohbHtdyv6rPx5ysu6H4uzspJRH9YPZPSA8BgmfAr3vPfzE+erh/OVv+Jz5W+0eCu7BJvsE0Gd81632Efz/0D7D+c8H/T+1/wBgvti/4AHLpwAAAABJRU5ErkJggg=="/><g id="分组-7"><path id="多边形" class="cls-2" d="M29,2.58,47.78,13.42a2,2,0,0,1,1,1.73v21.7a2,2,0,0,1-1,1.73L29,49.42a2,2,0,0,1-2,0L8.22,38.58a2,2,0,0,1-1-1.73V15.15a2,2,0,0,1,1-1.73L27,2.58A2,2,0,0,1,29,2.58Z" transform="translate(-5.75 -2.31)"/><path class="cls-3" d="M29.44,9.56l13.11,7.57a2,2,0,0,1,1,1.73V34a2,2,0,0,1-1,1.73L29.44,43.31a2,2,0,0,1-2,0L14.32,35.74a2,2,0,0,1-1-1.73V18.86a2,2,0,0,1,1-1.73L27.44,9.56A2,2,0,0,1,29.44,9.56Z" transform="translate(-5.75 -2.31)"/><g id="Group-5"><polygon id="Path" class="cls-4" points="24.99 20.17 24.99 16.63 30.88 22.52 20.28 22.52 20.28 20.17 24.99 20.17 24.99 20.17"/><polygon class="cls-4" points="14.26 25.09 24.85 25.09 24.85 27.5 20.14 27.5 20.14 31.12 14.26 25.09 14.26 25.09"/></g></g></g></g></svg>
|
After Width: | Height: | Size: 4.5 KiB |
After Width: | Height: | Size: 5.6 KiB |
After Width: | Height: | Size: 3.0 KiB |
After Width: | Height: | Size: 595 B |
After Width: | Height: | Size: 3.0 KiB |
After Width: | Height: | Size: 3.9 KiB |
After Width: | Height: | Size: 553 B |
After Width: | Height: | Size: 15 KiB |
After Width: | Height: | Size: 18 KiB |
After Width: | Height: | Size: 11 KiB |
After Width: | Height: | Size: 17 KiB |
|
@ -0,0 +1,333 @@
|
|||
{
|
||||
"7010-0001": "确定",
|
||||
"7010-0002": "删除",
|
||||
"7010-0003": "保存",
|
||||
"7010-0004": "取消",
|
||||
|
||||
"7010-0005": "超期",
|
||||
"7010-0006": "即将超期",
|
||||
"7010-0007": "出纳驳回:金额数值已经超出了公司限额,请 修改金额数值。",
|
||||
"7010-0008": "单据编号",
|
||||
"7010-0009": "小时",
|
||||
"7010-0010": "分钟",
|
||||
"7010-0011": "是",
|
||||
"7010-0012": "否",
|
||||
"7010-0013": "处理成功",
|
||||
"7010-0014": "启用成功",
|
||||
"7010-0015": "停用成功",
|
||||
|
||||
"701001RWCL-0001": "定向提取",
|
||||
"701001RWCL-0002": "审批情况",
|
||||
"701001RWCL-0003": "批准",
|
||||
"701001RWCL-0004": "取消审核",
|
||||
"701001RWCL-0005": "驳回",
|
||||
"701001RWCL-0006": "挂起",
|
||||
"701001RWCL-0007": "申请调整",
|
||||
"701001RWCL-0008": "操作记录",
|
||||
"701001RWCL-0009": "返回",
|
||||
"701001RWCL-0010": "我的作业",
|
||||
"701001RWCL-0011": "待处理",
|
||||
"701001RWCL-0012": "已驳回",
|
||||
"701001RWCL-0013": "已挂起",
|
||||
"701001RWCL-0014": "待调整",
|
||||
"701001RWCL-0015": "已处理",
|
||||
"701001RWCL-0016": "任务提取",
|
||||
"701001RWCL-0017": "取消调整",
|
||||
"701001RWCL-0018": "取消挂起",
|
||||
"701001RWCL-0019": "浏览器不支持iframe标签",
|
||||
"701001RWCL-0020": "定向提取",
|
||||
"701001RWCL-0021": "待提取",
|
||||
"701001RWCL-0022": "提取任务",
|
||||
"701001RWCL-0023": "提取成功",
|
||||
"701001RWCL-0024": "当前没有待提取任务!",
|
||||
"701001RWCL-0025": "我的作业",
|
||||
"701001RWCL-0026": "已提取",
|
||||
"701001RWCL-0027": "优先级管理",
|
||||
"701001RWCL-0028": "作业调度",
|
||||
"701001RWCL-0029": "本周作业情况",
|
||||
"701001RWCL-0030": "平均处理时间",
|
||||
"701001RWCL-0031": "组内排名",
|
||||
"701001RWCL-0032": "今日作业量",
|
||||
"701001RWCL-0033": "在手作业量",
|
||||
"701001RWCL-0034": "返回任务列表",
|
||||
"701001RWCL-0035": "空",
|
||||
"701001RWCL-0036": "信用等级:",
|
||||
"701001RWCL-0037": "信用批准",
|
||||
"701001RWCL-0038": "修改",
|
||||
"701001RWCL-0039": "确定要删除吗?",
|
||||
"701001RWCL-0040": "对应组织:",
|
||||
"701001RWCL-0041": "备注:",
|
||||
"701001RWCL-0042": "删除成功",
|
||||
"701001RWCL-0043": "启用成功",
|
||||
"701001RWCL-0044": "停用成功",
|
||||
"701001RWCL-0045": "共享中心管理",
|
||||
"701001RWCL-0046": "新增",
|
||||
|
||||
"701001RWCL-0047": "提示信息",
|
||||
"701001RWCL-0048": "温馨提示",
|
||||
"701001RWCL-0049": "是否继续?",
|
||||
"701001RWCL-0050": "共享环节",
|
||||
"701001RWCL-0051": "作业组",
|
||||
"701001RWCL-0052": "请选择人员",
|
||||
"701001RWCL-0053": "请输入分配原因",
|
||||
"701001RWCL-0054": "人员列表",
|
||||
"701001RWCL-0055": "强制分配",
|
||||
"701001RWCL-0056": "紧急",
|
||||
"701001RWCL-0057": "本人驳回",
|
||||
"701001RWCL-0058": "上级驳回",
|
||||
"701001RWCL-0059": "业务单元",
|
||||
"701001RWCL-0060": "操作",
|
||||
"701001RWCL-0061": "包含",
|
||||
"701001RWCL-0062": "滑动加载更多",
|
||||
"701001RWCL-0063": "优先级设置",
|
||||
"701001RWCL-0064": "置顶成功",
|
||||
"701001RWCL-0065": "置顶失败",
|
||||
"701001RWCL-0066": "修改成功",
|
||||
"701001RWCL-0067": "修改失败",
|
||||
"701001RWCL-0068": "设置委托关系",
|
||||
"701001RWCL-0069": "请搜索业务单元",
|
||||
"701001RWCL-0070": "显示停用",
|
||||
"701001RWCL-0071": "新增共享委托关系",
|
||||
"701001RWCL-0072": "以下业务单元已委托给当前共享服务中心,不可重复委托",
|
||||
"701001RWCL-0073": "确定要重置任务吗?",
|
||||
"701001RWCL-0074": "此操作会丢失本次修改,请确定?",
|
||||
"701001RWCL-0075": "重置完成,已重置",
|
||||
"701001RWCL-0076": "条任务",
|
||||
"701001RWCL-0077": "重置任务",
|
||||
"701001RWCL-0078": "集团(所有)",
|
||||
"701001RWCL-0079": "第",
|
||||
"701001RWCL-0080": "行作业组不能为空",
|
||||
"701001RWCL-0081": "规则适用作业组",
|
||||
"701001RWCL-0082": "确认要删除该信息吗?",
|
||||
"701001RWCL-0083": "您有未保存的数据,请保存后重试",
|
||||
"701001RWCL-0084": "请至少选择一条数据",
|
||||
"701001RWCL-0085": "批量删除",
|
||||
"701001RWCL-0086": "确认删除选中数据吗?",
|
||||
"701001RWCL-0087": "新增提取规则",
|
||||
"701001RWCL-0088": "修改提取规则",
|
||||
"701001RWCL-0089": "请至少选择一行数据",
|
||||
"701001RWCL-0090": "提示",
|
||||
"701001RWCL-0091": "确定删除所选数据?",
|
||||
"701001RWCL-0092": "无",
|
||||
"701001RWCL-0093": "周",
|
||||
"701001RWCL-0094": "月",
|
||||
"701001RWCL-0095": "年",
|
||||
"701001RWCL-0096": "公共字段",
|
||||
"701001RWCL-0097": "表和字段",
|
||||
"701001RWCL-0098": "元数据属性",
|
||||
"701001RWCL-0099": "确定要停用该共享中心吗?",
|
||||
"701001RWCL-0100": "确定要启用该共享中心吗?",
|
||||
"701001RWCL-0101": "已存在下级作业组规则,不允许修改规则",
|
||||
"701001RWCL-0102": "单位范围",
|
||||
"701001RWCL-0103": "交易类型",
|
||||
"701001RWCL-0104": "单据类型",
|
||||
"701001RWCL-0105": "确定要停用该作业组规则吗?",
|
||||
"701001RWCL-0106": "确定要启用该作业组规则吗?",
|
||||
"701001RWCL-0107": "将上级任务规则带到本作业组?",
|
||||
"701001RWCL-0108": "将上级任务规则带到本作业组?",
|
||||
"701001RWCL-0109": "搜索名称",
|
||||
"701001RWCL-0110": "规则名称",
|
||||
"701001RWCL-0111": "【查看全部】",
|
||||
"701001RWCL-0112": "更多范围",
|
||||
"701001RWCL-0113": "包含下级单位",
|
||||
"701001RWCL-0114": "配置作业组工作",
|
||||
"701001RWCL-0115": "保存新增",
|
||||
"701001RWCL-0116": "新增作业组规则",
|
||||
"701001RWCL-0117": "表格无可操作数据,不允许保存",
|
||||
"701001RWCL-0118": "保存成功",
|
||||
"701001RWCL-0119": "组长",
|
||||
"701001RWCL-0120": "组员",
|
||||
"701001RWCL-0121": "人",
|
||||
"701001RWCL-0122": "全选",
|
||||
"701001RWCL-0123": "目标作业组下已存在用户:",
|
||||
"701001RWCL-0124": "、",
|
||||
"701001RWCL-0125": "请继续选择组员",
|
||||
"701001RWCL-0126": "请继续选择组长",
|
||||
"701001RWCL-0127": "已选中,请勿重复选择",
|
||||
"701001RWCL-0128": "请搜索用户名称",
|
||||
"701001RWCL-0129": "配置作业组用户",
|
||||
"701001RWCL-0130": "已选",
|
||||
"701001RWCL-0131": "清空",
|
||||
"701001RWCL-0132": "复制到",
|
||||
"701001RWCL-0133": "移动到",
|
||||
"701001RWCL-0134": "请输入申请调整原因",
|
||||
"701001RWCL-0135": "请注意",
|
||||
"701001RWCL-0136": "请选择至少一个信用指标",
|
||||
"701001RWCL-0137": "请输入信用审批建议",
|
||||
"701001RWCL-0138": "请查询",
|
||||
"701001RWCL-0139": "信用审批",
|
||||
"701001RWCL-0140": "信用评价",
|
||||
"701001RWCL-0141": "请输入挂起原因",
|
||||
"701001RWCL-0142": "请选择驳回流程",
|
||||
"701001RWCL-0143": "请输入驳回原因",
|
||||
"701001RWCL-0144": "驳回成功",
|
||||
"701001RWCL-0145": "驳回至",
|
||||
"701001RWCL-0146": "重走流程",
|
||||
"701001RWCL-0147": "不重走流程",
|
||||
"701001RWCL-0148": "请输入取消调整原因",
|
||||
"701001RWCL-0149": "请输入取消挂起原因",
|
||||
"701001RWCL-0150": "单",
|
||||
"701001RWCL-0151": "本周排名",
|
||||
"701001RWCL-0152": "本周处理",
|
||||
"701001RWCL-0153": "本周驳回",
|
||||
"701001RWCL-0154": "本月排名",
|
||||
"701001RWCL-0155": "本月处理",
|
||||
"701001RWCL-0156": "本月驳回",
|
||||
"701001RWCL-0157": "本年排名",
|
||||
"701001RWCL-0158": "本年处理",
|
||||
"701001RWCL-0159": "本年驳回",
|
||||
"701001RWCL-0160": "作业处理量",
|
||||
"701001RWCL-0161": "总处理量",
|
||||
"701001RWCL-0162": "重置完成",
|
||||
"701001RWCL-0163": "已重置",
|
||||
"701001RWCL-0164": "已处理",
|
||||
"701001RWCL-0165": "提取规则",
|
||||
"701001RWCL-0166": "公共字段数据",
|
||||
"701001RWCL-0167": "共享中心编码不能超过10位",
|
||||
"701001RWCL-0168": "确定要删除所选数据吗?",
|
||||
"701001RWCL-0169": "取消审批",
|
||||
"701001RWCL-0170": "确定要取消吗?",
|
||||
|
||||
"701001RWCL-0171": "设置智能审批规则",
|
||||
"701001RWCL-0172": "立即执行",
|
||||
"701001RWCL-0173": "新增智能审批规则",
|
||||
"701001RWCL-0174": "规则编码",
|
||||
"701001RWCL-0175": "规则名称",
|
||||
"701001RWCL-0176": "审批条件",
|
||||
"701001RWCL-0177": "单据类型",
|
||||
"701001RWCL-0178": "交易类型",
|
||||
"701001RWCL-0179": "单位范围",
|
||||
"701001RWCL-0180": "包含下级单位",
|
||||
"701001RWCL-0181": "设置智能审批规则",
|
||||
"701001RWCL-0182": "超期状态",
|
||||
|
||||
"701001RWCL-0183": "当前作业组未配置优先级",
|
||||
"701001RWCL-0184": "外部挂起",
|
||||
"701001RWCL-0185": "创建共享中心",
|
||||
"701001RWCL-0186": "设置任务优先级",
|
||||
"701001RWCL-0187": "确定要删除所选数据吗?",
|
||||
"701001RWCL-0188": "配置提取规则",
|
||||
|
||||
"701001RWCL-0189": "确定要启用吗?",
|
||||
"701001RWCL-0190": "确定要停用吗?",
|
||||
"701001RWCL-0191": "报账本币金额",
|
||||
"701001RWCL-0192": "报账人信用",
|
||||
"701001RWCL-0193": "标准作业时间(小时)",
|
||||
"701001RWCL-0194": "提前预警时间(小时)",
|
||||
"701001RWCL-0195": "业务单元+集团",
|
||||
"701001RWCL-0196": "接单",
|
||||
"701001RWCL-0197": "请选择共享中心",
|
||||
"701001RWCL-0198": "审核要点必须全部通过",
|
||||
"701001RWCL-0199": "是",
|
||||
"701001RWCL-0200": "否",
|
||||
"701001RWCL-0201": "序号",
|
||||
|
||||
"701001RWCL-0202": "联查凭证",
|
||||
"701001RWCL-0203": "出纳驳回",
|
||||
|
||||
"701001RWCL-0204": "接单中",
|
||||
"701001RWCL-0205": "停止接单",
|
||||
"701001RWCL-0206": "开始接单",
|
||||
"701001RWCL-0207": "有新的作业任务",
|
||||
|
||||
|
||||
"refer-0001": "编码",
|
||||
"refer-0002": "名称",
|
||||
|
||||
"refer-sscworkgroupuser-0001": "作业人员",
|
||||
"refer-sscnode-0001": "共享环节",
|
||||
"refer-sscworkgroup-0001": "作业组",
|
||||
"refer-sscunit-0001": "共享中心",
|
||||
"refer-sscsmuser-0001": "用户",
|
||||
"refer-sscsmuser-0002": "用户编码",
|
||||
"refer-sscsmuser-0003": "用户名称",
|
||||
"refer-sscsmuser-0004": "人员姓名",
|
||||
"refer-sscsmuser-0005": "人员部门",
|
||||
"refer-sscsmuser-0006": "人员单位",
|
||||
"refer-creditrule-0001": "信用指标",
|
||||
"refer-dooroad-0001": "业务系统",
|
||||
|
||||
"refer-sscuser-0001": "共享服务中心",
|
||||
"refer-sscuser-0002": "编码",
|
||||
"refer-sscuser-0003": "名称",
|
||||
|
||||
"701003RWCX-0169": "作业查询",
|
||||
"701003RWCX-0170": "模糊搜索",
|
||||
"701003RWCX-0171": "滑动加载更多",
|
||||
"701003RWCX-0172": "作业查询",
|
||||
|
||||
"701004RWCL-0173": "请保存您的信息修改。",
|
||||
|
||||
"701004SPJK_001": "智能审批监控",
|
||||
"701004SPJK_004": "退回人工处理",
|
||||
"701004SPJK_005": "确定",
|
||||
"701004SPJK_006": "取消",
|
||||
"701004SPJK_007": "请输入退回人工处理原因!",
|
||||
"701004SPJK_008": "未选中单据!",
|
||||
"701004SPJK_009": "没有查询到单据。",
|
||||
"701004SPJK_010": "退回人工处理失败!",
|
||||
"701004SPJK_011": "成功退回人工处理",
|
||||
"701004SPJK_012": "所选单据已转过人工处理,不能再进行人工处理。",
|
||||
"701004SPJK_013": "条",
|
||||
|
||||
"701004SPGZ_001": "确定要启用该审批规则吗?",
|
||||
"701004SPGZ_002": "确定要停用该审批规则吗?",
|
||||
"701004SPGZ_003": "已停用的审批规则不能执行",
|
||||
"701004SPGZ_004": "请选择共享中心",
|
||||
|
||||
"700108PDGZ-001": "规则编码",
|
||||
"700108PDGZ-002": "规则名称",
|
||||
"700108PDGZ-003": "按工作日历派单",
|
||||
"700108PDGZ-004": "工作日历",
|
||||
"700108PDGZ-005": "任务分配规则",
|
||||
"700108PDGZ-006": "管理层级",
|
||||
"700108PDGZ-007": "作业组范围",
|
||||
"700108PDGZ-008": "确定启用派单规则?",
|
||||
"700108PDGZ-009": "确定停用派单规则?",
|
||||
"700108PDGZ-010": "修改",
|
||||
"700108PDGZ-011": "确定要删除吗?",
|
||||
"700108PDGZ-012": "删除",
|
||||
"700108PDGZ-013": "【查看全部】",
|
||||
"700108PDGZ-014": "配置派单规则",
|
||||
"700108PDGZ-015": "新增派单规则",
|
||||
"700108PDGZ-016": "派单阈值",
|
||||
|
||||
|
||||
"refer-busitype-0001": "业务范围",
|
||||
"refer-busitype-0002": "业务名称",
|
||||
|
||||
"7010Filter-All": "全部",
|
||||
|
||||
"700109RYZT-TITLE": "作业人员状态",
|
||||
|
||||
"7010-PROBLEM-01": "无问题明细",
|
||||
|
||||
"7010-PROBLEM-02": "隐藏问题明细",
|
||||
|
||||
"7010-PROBLEM-03": "显示问题明细",
|
||||
|
||||
"7010-PROBLEM-04": "操作",
|
||||
|
||||
"701010DOOROAD-001": "注册业务系统",
|
||||
"701010DOOROAD-002": "修改",
|
||||
"701010DOOROAD-003": "删除",
|
||||
"701010DOOROAD-004": "新增业务系统",
|
||||
"701010DOOROAD-005": "修改业务系统",
|
||||
"701010DOOROAD-006": "保存",
|
||||
"701010DOOROAD-007": "取消",
|
||||
"701010DOOROAD-008": "设置单据打开方式",
|
||||
"701010DOOROAD-009": "设置影像接口",
|
||||
"701010DOOROAD-010": "接口参数",
|
||||
"701010DOOROAD-011": "设置附件接口",
|
||||
"701010DOOROAD-012": "事件注册",
|
||||
"701010DOOROAD-013": "操作",
|
||||
"701010DOOROAD-014": "确定要删除吗?",
|
||||
"701010DOOROAD-015": "注册业务事件",
|
||||
"701010DOOROAD-016": "保存成功!",
|
||||
"701010DOOROAD-017": "删除成功!",
|
||||
"701010DOOROAD-018": "确定要删除吗?",
|
||||
"701010DOOROAD-019": "确定要取消吗?",
|
||||
"701010DOOROAD-020": "批量新增",
|
||||
"701010DOOROAD-021": "设置凭证打开方式",
|
||||
"701010DOOROAD-022": "刷新成功!"
|
||||
}
|
|
@ -0,0 +1,4 @@
|
|||
{
|
||||
"7011-0001": "联查凭证",
|
||||
"7011-0002": "暂无凭证数据!"
|
||||
}
|
|
@ -0,0 +1,88 @@
|
|||
/*FDKFkr+TYgGKTTudQv9suM5TObrl0kaUnLjqLMCkTsQ=*/
|
||||
!function(e, r) {
|
||||
"object" == typeof exports && "object" == typeof module ? module.exports = r(require("nc-lightapp-front")) : "function" == typeof define && define.amd ? define(["nc-lightapp-front"], r) : "object" == typeof exports ? exports["ssctp/refer/credit/CreditRuleTreeRef/index"] = r(require("nc-lightapp-front")) : e["ssctp/refer/credit/CreditRuleTreeRef/index"] = r(e["nc-lightapp-front"])
|
||||
} (window,
|
||||
function(e) {
|
||||
return function(e) {
|
||||
var r = {};
|
||||
function t(n) {
|
||||
if (r[n]) return r[n].exports;
|
||||
var o = r[n] = {
|
||||
i: n,
|
||||
l: !1,
|
||||
exports: {}
|
||||
};
|
||||
return e[n].call(o.exports, o, o.exports, t),
|
||||
o.l = !0,
|
||||
o.exports
|
||||
}
|
||||
return t.m = e,
|
||||
t.c = r,
|
||||
t.d = function(e, r, n) {
|
||||
t.o(e, r) || Object.defineProperty(e, r, {
|
||||
configurable: !1,
|
||||
enumerable: !0,
|
||||
get: n
|
||||
})
|
||||
},
|
||||
t.r = function(e) {
|
||||
Object.defineProperty(e, "__esModule", {
|
||||
value: !0
|
||||
})
|
||||
},
|
||||
t.n = function(e) {
|
||||
var r = e && e.__esModule ?
|
||||
function() {
|
||||
return e.
|
||||
default
|
||||
}:
|
||||
function() {
|
||||
return e
|
||||
};
|
||||
return t.d(r, "a", r),
|
||||
r
|
||||
},
|
||||
t.o = function(e, r) {
|
||||
return Object.prototype.hasOwnProperty.call(e, r)
|
||||
},
|
||||
t.p = "../../../../",
|
||||
t(t.s = 629)
|
||||
} ({
|
||||
0 : function(r, t) {
|
||||
r.exports = e
|
||||
},
|
||||
256 : function(e, r, t) {
|
||||
"use strict";
|
||||
Object.defineProperty(r, "__esModule", {
|
||||
value: !0
|
||||
}),
|
||||
r.
|
||||
default = function() {
|
||||
var e = arguments.length > 0 && void 0 !== arguments[0] ? arguments[0] : {};
|
||||
return React.createElement(n, Object.assign({
|
||||
multiLang: {
|
||||
moduleId: '7010',
|
||||
domainName: 'ssctp',
|
||||
currentLocale: 'simpchn'
|
||||
},
|
||||
refType: "tree",
|
||||
refName: "refer-creditrule-0001",
|
||||
placeholder: "refer-creditrule-0001",
|
||||
refCode: "ssctp.refer.credit.CreditRuleTreeRef",
|
||||
queryTreeUrl: "/nccloud/ssctp/credit/creditRuleAction.do",
|
||||
treeConfig: {
|
||||
name: ["refer-0001", "refer-0002"],
|
||||
code: ["refcode", "refname"]
|
||||
},
|
||||
isMultiSelectedEnabled: !1
|
||||
},
|
||||
e))
|
||||
};
|
||||
var n = t(0).high.Refer
|
||||
},
|
||||
629 : function(e, r, t) {
|
||||
e.exports = t(256)
|
||||
}
|
||||
})
|
||||
});
|
||||
/*FDKFkr+TYgGKTTudQv9suM5TObrl0kaUnLjqLMCkTsQ=*/
|
|
@ -0,0 +1,56 @@
|
|||
/*FDKFkr+TYgGKTTudQv9suM5TObrl0kaUnLjqLMCkTsQ=*/
|
||||
!function (e, r) {
|
||||
"object" == typeof exports && "object" == typeof module ? module.exports = r(require("nc-lightapp-front")) : "function" == typeof define && define.amd ? define(["nc-lightapp-front"], r) : "object" == typeof exports ? exports["ssctp/refer/sscbd/SSCBusiTypeGridRef/index"] = r(require("nc-lightapp-front")) : e["ssctp/refer/sscbd/SSCBusiTypeGridRef/index"] = r(e["nc-lightapp-front"])
|
||||
}(window, function (e) {
|
||||
return function (e) {
|
||||
var r = {};
|
||||
|
||||
function o(t) {
|
||||
if (r[t]) return r[t].exports;
|
||||
var n = r[t] = {i: t, l: !1, exports: {}};
|
||||
return e[t].call(n.exports, n, n.exports, o), n.l = !0, n.exports
|
||||
}
|
||||
|
||||
return o.m = e, o.c = r, o.d = function (e, r, t) {
|
||||
o.o(e, r) || Object.defineProperty(e, r, {configurable: !1, enumerable: !0, get: t})
|
||||
}, o.r = function (e) {
|
||||
Object.defineProperty(e, "__esModule", {value: !0})
|
||||
}, o.n = function (e) {
|
||||
var r = e && e.__esModule ? function () {
|
||||
return e.default
|
||||
} : function () {
|
||||
return e
|
||||
};
|
||||
return o.d(r, "a", r), r
|
||||
}, o.o = function (e, r) {
|
||||
return Object.prototype.hasOwnProperty.call(e, r)
|
||||
}, o.p = "../../../../", o(o.s = 635)
|
||||
}({
|
||||
0: function (r, o) {
|
||||
r.exports = e
|
||||
}, 261: function (e, r, o) {
|
||||
"use strict";
|
||||
Object.defineProperty(r, "__esModule", {value: !0}), r.default = function () {
|
||||
var e = arguments.length > 0 && void 0 !== arguments[0] ? arguments[0] : {};
|
||||
return React.createElement(t, Object.assign({
|
||||
multiLang: {
|
||||
moduleId: '7010',
|
||||
domainName: 'ssctp',
|
||||
currentLocale: 'simpchn'
|
||||
},
|
||||
refType: "grid",
|
||||
refName: "refer-busitype-0001",
|
||||
placeholder: "refer-busitype-0001",
|
||||
refCode: "sscpfa.pfareport.SSCBusiTypeGridRef",
|
||||
queryGridUrl: "/nccloud/ssctp/sscbd/SSCBusiTypeGridRef.do",
|
||||
columnConfig: [{name: ["refer-busitype-0002"], code: ["refname"]}],
|
||||
isMultiSelectedEnabled: !1
|
||||
}, e))
|
||||
};
|
||||
var t = o(0).high.Refer
|
||||
}, 635: function (e, r, o) {
|
||||
e.exports = o(261)
|
||||
}
|
||||
})
|
||||
});
|
||||
/*FDKFkr+TYgGKTTudQv9suM5TObrl0kaUnLjqLMCkTsQ=*/
|
|
@ -0,0 +1,56 @@
|
|||
/*FDKFkr+TYgGKTTudQv9suM5TObrl0kaUnLjqLMCkTsQ=*/
|
||||
!function (e, r) {
|
||||
"object" == typeof exports && "object" == typeof module ? module.exports = r(require("nc-lightapp-front")) : "function" == typeof define && define.amd ? define(["nc-lightapp-front"], r) : "object" == typeof exports ? exports["ssccloud/refer/sscbd/SSCUnitGridRef/index"] = r(require("nc-lightapp-front")) : e["ssccloud/refer/sscbd/SSCUnitGridRef/index"] = r(e["nc-lightapp-front"])
|
||||
}(window, function (e) {
|
||||
return function (e) {
|
||||
var r = {};
|
||||
|
||||
function o(t) {
|
||||
if (r[t]) return r[t].exports;
|
||||
var n = r[t] = {i: t, l: !1, exports: {}};
|
||||
return e[t].call(n.exports, n, n.exports, o), n.l = !0, n.exports
|
||||
}
|
||||
|
||||
return o.m = e, o.c = r, o.d = function (e, r, t) {
|
||||
o.o(e, r) || Object.defineProperty(e, r, {configurable: !1, enumerable: !0, get: t})
|
||||
}, o.r = function (e) {
|
||||
Object.defineProperty(e, "__esModule", {value: !0})
|
||||
}, o.n = function (e) {
|
||||
var r = e && e.__esModule ? function () {
|
||||
return e.default
|
||||
} : function () {
|
||||
return e
|
||||
};
|
||||
return o.d(r, "a", r), r
|
||||
}, o.o = function (e, r) {
|
||||
return Object.prototype.hasOwnProperty.call(e, r)
|
||||
}, o.p = "../../../../", o(o.s = 635)
|
||||
}({
|
||||
0: function (r, o) {
|
||||
r.exports = e
|
||||
}, 261: function (e, r, o) {
|
||||
"use strict";
|
||||
Object.defineProperty(r, "__esModule", {value: !0}), r.default = function () {
|
||||
var e = arguments.length > 0 && void 0 !== arguments[0] ? arguments[0] : {};
|
||||
return React.createElement(t, Object.assign({
|
||||
multiLang: {
|
||||
moduleId: '7010',
|
||||
domainName: 'ssctp',
|
||||
currentLocale: 'simpchn'
|
||||
},
|
||||
refType: "grid",
|
||||
refName: "refer-sscnode-0001",
|
||||
placeholder: "refer-sscnode-0001",
|
||||
refCode: "ssctp.refer.sscbd.SSCNodeGridRef",
|
||||
queryGridUrl: "/nccloud/sscbd/allotrulepost/SSCNodeGridRef.do",
|
||||
columnConfig: [{name: ["refer-0001", "refer-0002"], code: ["refcode", "refname"]}],
|
||||
isMultiSelectedEnabled: !1
|
||||
}, e))
|
||||
};
|
||||
var t = o(0).high.Refer
|
||||
}, 635: function (e, r, o) {
|
||||
e.exports = o(261)
|
||||
}
|
||||
})
|
||||
});
|
||||
/*FDKFkr+TYgGKTTudQv9suM5TObrl0kaUnLjqLMCkTsQ=*/
|
|
@ -0,0 +1,56 @@
|
|||
/*FDKFkr+TYgGKTTudQv9suM5TObrl0kaUnLjqLMCkTsQ=*/
|
||||
!function (e, r) {
|
||||
"object" == typeof exports && "object" == typeof module ? module.exports = r(require("nc-lightapp-front")) : "function" == typeof define && define.amd ? define(["nc-lightapp-front"], r) : "object" == typeof exports ? exports["ssctp/refer/sscbd/SSCOtsGridRef/index"] = r(require("nc-lightapp-front")) : e["ssctp/refer/sscbd/SSCOtsGridRef/index"] = r(e["nc-lightapp-front"])
|
||||
}(window, function (e) {
|
||||
return function (e) {
|
||||
var r = {};
|
||||
|
||||
function o(t) {
|
||||
if (r[t]) return r[t].exports;
|
||||
var n = r[t] = {i: t, l: !1, exports: {}};
|
||||
return e[t].call(n.exports, n, n.exports, o), n.l = !0, n.exports
|
||||
}
|
||||
|
||||
return o.m = e, o.c = r, o.d = function (e, r, t) {
|
||||
o.o(e, r) || Object.defineProperty(e, r, {configurable: !1, enumerable: !0, get: t})
|
||||
}, o.r = function (e) {
|
||||
Object.defineProperty(e, "__esModule", {value: !0})
|
||||
}, o.n = function (e) {
|
||||
var r = e && e.__esModule ? function () {
|
||||
return e.default
|
||||
} : function () {
|
||||
return e
|
||||
};
|
||||
return o.d(r, "a", r), r
|
||||
}, o.o = function (e, r) {
|
||||
return Object.prototype.hasOwnProperty.call(e, r)
|
||||
}, o.p = "../../../../", o(o.s = 635)
|
||||
}({
|
||||
0: function (r, o) {
|
||||
r.exports = e
|
||||
}, 261: function (e, r, o) {
|
||||
"use strict";
|
||||
Object.defineProperty(r, "__esModule", {value: !0}), r.default = function () {
|
||||
var e = arguments.length > 0 && void 0 !== arguments[0] ? arguments[0] : {};
|
||||
return React.createElement(t, Object.assign({
|
||||
multiLang: {
|
||||
moduleId: '7010',
|
||||
domainName: 'ssctp',
|
||||
currentLocale: 'simpchn'
|
||||
},
|
||||
refType: "grid",
|
||||
refName: "refer-dooroad-0001",
|
||||
placeholder: "refer-dooroad-0001",
|
||||
refCode: "ssctp.refer.sscbd.SSCOtsGridRef",
|
||||
queryGridUrl: "/nccloud/ssctp/dooroad/SSCOtsGridRef.do",
|
||||
columnConfig: [{name: ["refer-0001", "refer-0002"], code: ["refcode", "refname"]}],
|
||||
isMultiSelectedEnabled: !1
|
||||
}, e))
|
||||
};
|
||||
var t = o(0).high.Refer
|
||||
}, 635: function (e, r, o) {
|
||||
e.exports = o(261)
|
||||
}
|
||||
})
|
||||
});
|
||||
/*FDKFkr+TYgGKTTudQv9suM5TObrl0kaUnLjqLMCkTsQ=*/
|