| | |
| | | param.data_md5 = param.data_md5 || '' |
| | | param.time_limit = param.time_limit || 0 |
| | | |
| | | param.data.forEach(item => { |
| | | item.exps.forEach(cell => { |
| | | if (typeof(cell.value) === 'number') { |
| | | cell.value = cell.value + '' |
| | | } |
| | | }) |
| | | }) |
| | | |
| | | param = this.encryptParam(param) |
| | | |
| | | return new Promise((resolve) => { |
| | |
| | | if (options.length) { |
| | | options.forEach(line => { |
| | | let vals = [line.productcode, line.productname, line.spec, line.unit, line.bill_count, line.unitprice, line.amount_line, line.tax_classify_code, line.tax_classify_name, line.tax_rate, line.tax_amount, line.free_tax_mark || '', line.vat_special_management || '', line.invoice_lp || '', line.tax_item, line.tax_method, line.uuid, 'del'] |
| | | vals = vals.map(val => typeof(val) === 'number' ? val + '' : val) |
| | | lines.push(vals) |
| | | }) |
| | | } |
| | |
| | | let lines = data.map(item => { |
| | | let vals = [] |
| | | forms.forEach(col => { |
| | | vals.push(item[col.field]) |
| | | if (typeof(item[col.field]) === 'number') { |
| | | vals.push(item[col.field] + '') |
| | | } else { |
| | | vals.push(item[col.field]) |
| | | } |
| | | }) |
| | | |
| | | vals.push(item.$$uuid) |
| | |
| | | import React, {Component} from 'react' |
| | | import { withRouter } from 'react-router-dom' |
| | | import { Spin, notification, Table, Typography, Row, Col, Tooltip } from 'antd' |
| | | import { QuestionCircleOutlined } from '@ant-design/icons' |
| | | import { Spin, notification, Table, Typography, Row, Col, Tooltip, Button, Modal } from 'antd' |
| | | import { QuestionCircleOutlined, LinkOutlined } from '@ant-design/icons' |
| | | |
| | | import Api from '@/api' |
| | | import { langs } from '@/store/options.js' |
| | |
| | | import './index.scss' |
| | | |
| | | const { Paragraph } = Typography |
| | | const { confirm } = Modal |
| | | |
| | | const Header = asyncComponent(() => import('./header')) |
| | | |
| | |
| | | this.setState({ selectApp: record }) |
| | | } |
| | | |
| | | updateLink = (item) => { |
| | | let link = `${window.GLOB.baseurl}${item.typename === 'pad' ? 'mob' : item.typename}/index.html#/index/${this.state.selectApp.kei_no}/${item.typename !== 'pc' ? item.typename + '/' : ''}${item.lang}` |
| | | |
| | | let param = { |
| | | func: 's_miniapp_kei_linkurl_upt', |
| | | id: item.ID, |
| | | linkurl: link |
| | | } |
| | | |
| | | if (window.GLOB.mainSystemApi) { |
| | | param.rduri = window.GLOB.mainSystemApi |
| | | } |
| | | |
| | | confirm({ |
| | | content: '确定更新应用链接地址吗?', |
| | | onOk() { |
| | | return new Promise(resolve => { |
| | | Api.genericInterface(param).then(result => { |
| | | if (result.status) { |
| | | notification.success({ |
| | | top: 92, |
| | | message: '操作成功!', |
| | | duration: 3 |
| | | }) |
| | | } else { |
| | | notification.warning({ |
| | | top: 92, |
| | | message: result.message, |
| | | duration: 5 |
| | | }) |
| | | } |
| | | resolve() |
| | | }, () => { |
| | | resolve() |
| | | }) |
| | | }) |
| | | }, |
| | | onCancel() {} |
| | | }) |
| | | } |
| | | |
| | | render () { |
| | | const { loading, columns, applist, selectApp } = this.state |
| | | |
| | |
| | | </Col> |
| | | </Row> |
| | | <div className="action"> |
| | | <Button type="link" onClick={() => this.updateLink(item)}><LinkOutlined style={{color: 'orange'}}/></Button> |
| | | <Paragraph style={{display: 'inline-block', margin: 0}} copyable={{ text: `${window.GLOB.baseurl}${item.typename === 'pad' ? 'mob' : item.typename}/index.html#/index/${this.state.selectApp.kei_no}/${item.typename !== 'pc' ? item.typename + '/' : ''}${item.lang}${item.wxAppId ? '/' + item.wxAppId : ''}` }}></Paragraph> |
| | | </div> |
| | | </div> |
| | |
| | | import React, {Component} from 'react' |
| | | import { fromJS } from 'immutable' |
| | | import { Spin, notification, Input, Button, Table, Modal, Typography, Row, Col, Tooltip } from 'antd' |
| | | import { QuestionCircleOutlined } from '@ant-design/icons' |
| | | import { QuestionCircleOutlined, LinkOutlined } from '@ant-design/icons' |
| | | import moment from 'moment' |
| | | import md5 from 'md5' |
| | | |
| | |
| | | }) |
| | | } |
| | | |
| | | updateLink = (item) => { |
| | | let link = `${window.GLOB.baseurl}${item.typename === 'pad' ? 'mob' : item.typename}/index.html#/index/${this.state.selectApp.kei_no}/${item.typename !== 'pc' ? item.typename + '/' : ''}${item.lang}` |
| | | |
| | | let param = { |
| | | func: 's_miniapp_kei_linkurl_upt', |
| | | id: item.ID, |
| | | linkurl: link |
| | | } |
| | | |
| | | confirm({ |
| | | content: '确定更新应用链接地址吗?', |
| | | onOk() { |
| | | return new Promise(resolve => { |
| | | Api.getCloudConfig(param).then(result => { |
| | | if (result.status) { |
| | | notification.success({ |
| | | top: 92, |
| | | message: '操作成功!', |
| | | duration: 3 |
| | | }) |
| | | } else { |
| | | notification.warning({ |
| | | top: 92, |
| | | message: result.message, |
| | | duration: 5 |
| | | }) |
| | | } |
| | | resolve() |
| | | }, () => { |
| | | resolve() |
| | | }) |
| | | }) |
| | | }, |
| | | onCancel() {} |
| | | }) |
| | | } |
| | | |
| | | render () { |
| | | const { loading, visible, subVisible, columns, transcolumns, applist, translist, transVisible, selectApp, selectTran, selectSubApp, scriptVisible, scriptlist, scriptcolumns, selectScriptKeys } = this.state |
| | | |
| | |
| | | <Button type="link" onClick={() => this.setState({ selectSubApp: item, subVisible: 'edit' })} style={{color: '#8E44AD'}}>修改</Button> |
| | | <Button type="link" onClick={() => this.deleteSubApp(item)} style={{color: '#ff4d4f'}}>删除</Button> |
| | | <Button type="link" onClick={() => this.jumpApp(item)}>编辑应用</Button> |
| | | <Button type="link" onClick={() => this.updateLink(item)}><LinkOutlined style={{color: 'orange'}}/></Button> |
| | | <Paragraph style={{display: 'inline-block', margin: 0}} copyable={{ text: `${window.GLOB.baseurl}${item.typename === 'pad' ? 'mob' : item.typename}/index.html#/index/${this.state.selectApp.kei_no}/${item.typename !== 'pc' ? item.typename + '/' : ''}${item.lang}${item.wxAppId ? '/' + item.wxAppId : ''}` }}></Paragraph> |
| | | </div> |
| | | </div> |