gaozhan 4 лет назад
Родитель
Сommit
e17db34c2e

+ 12 - 1
src/pages/fengkong/features/group/add/index.js

@@ -70,7 +70,18 @@ class Add extends React.PureComponent {
           <Col span={12}>
             <Form {...formItemLayout}>
               <Form.Item label="分组名称">
-                {getFieldDecorator('name')(<Input placeholder="全英文或英文带下划线" />)}
+                {getFieldDecorator('name', {
+                  rules: [
+                    {
+                      required: true,
+                      message: '不能为空'
+                    },
+                    {
+                      max: 20,
+                      message: '长度不能超过20'
+                    }
+                  ]
+                })(<Input placeholder="全英文或英文带下划线" />)}
               </Form.Item>
               <Form.Item label="特征列表">
                 {getFieldDecorator('features')(<Input placeholder=",号分割" />)}

+ 12 - 1
src/pages/fengkong/strategies/add/index.js

@@ -117,7 +117,18 @@ class Add extends React.PureComponent {
           <Col span={12}>
             <Form {...formItemLayout}>
               <Form.Item label="决策名称">
-                {getFieldDecorator('name')(<Input placeholder="全英文或英文带下划线" />)}
+                {getFieldDecorator('name', {
+                  rules: [
+                    {
+                      required: true,
+                      message: '不能为空'
+                    },
+                    {
+                      max: 100,
+                      message: '长度不能超过100'
+                    }
+                  ]
+                })(<Input placeholder="全英文或英文带下划线" />)}
               </Form.Item>
               <Form.Item label="决策描述">
                 {getFieldDecorator('description')(<Input.TextArea placeholder="多行输入" />)}

+ 16 - 4
src/pages/fengkong/strategies/edit/$name.js

@@ -78,10 +78,22 @@ class Add extends React.PureComponent {
         }).then(res => {
           if (res.code === 0) {
             this.setState({ ...values })
-            Modal.success({
-              title: '提交成功',
-              content: '提交自核成功,请在自核列表中查看!'
-            })
+            //判断下当前是否是在自核列表里了
+            const path = this.props.location.pathname
+            const patt = new RegExp("VIEW","g");
+            if(path.match(patt)) {
+              Modal.success({
+                title: '提交成功',
+                content: '提交自核成功'
+              })
+            } else {
+              Modal.success({
+                title: '提交成功',
+                content: '提交成功后自动跳转到自核查看'
+              })
+              const name = "VIEW$"+this.state.name
+              setTimeout(() => { window.location.href = "/fengkong/view/self/self"}, 1000)
+            }
           }
         })
       }

+ 3 - 0
src/pages/fengkong/strategies/note/$name.js

@@ -4,6 +4,9 @@ import { message, Table, Form } from 'antd'
 import AceEditor from 'react-ace'
 import { queryNote } from '@/pages/fengkong/strategies/service'
 
+import 'ace-builds/src-noconflict/mode-java'
+import 'ace-builds/src-noconflict/theme-monokai'
+
 @connect(({ user }) => ({
   currentUser: user.currentUser
 }))

+ 2 - 2
src/pages/fengkong/strategies/strategies.js

@@ -144,14 +144,14 @@ class GroupList extends React.PureComponent {
                 pathname: './note/' + record.name,
                 state: record
               }}
-              target="_blank">记录</Link>
+              >记录</Link>
             <Divider type="vertical"/>
             <Link
               to={{
                 pathname: './edit/' + record.name,
                 state: record
               }}
-              target="_blank" >编辑</Link>
+              >编辑</Link>
             <Divider type="vertical"/>
             <Popconfirm
               title="确定删除"

+ 18 - 3
src/pages/fengkong/view/other/other.js

@@ -1,9 +1,10 @@
 import React from 'react'
 import { FilterTable } from 'wptpc-design'
 import { thanos } from '@/conf/config'
-import { message } from 'antd'
+import { message, Divider } from 'antd'
 import { update, writeLog, queryLog, reviewOk } from '../service.js'
 import Rv from '@/pages/fengkong/view/other/review'
+import VCM from '@/pages/fengkong/view/other/viewCodeModal'
 import { connect } from 'dva'
 
 const apiUrl = `${thanos}/thanos-admin/api/v1/dsl/list`
@@ -14,7 +15,9 @@ const apiUrl = `${thanos}/thanos-admin/api/v1/dsl/list`
 class OtherList extends React.PureComponent {
   state = {
     showModal: false,
-    params: {}
+    showVCModal: false,
+    params: {},
+    vParams:{}
   }
 
   filterSetting = {
@@ -104,6 +107,8 @@ class OtherList extends React.PureComponent {
         // 所有需要弹窗操作的都可以用编辑的逻辑;所有不需要弹窗的操作,比如上架、发布等,都可以用”删除“的逻辑
         render: (text, record) => (
           <span>
+            <a onClick={() => this.viewCode(record)}>查看代码</a>
+            <Divider type="vertical"/>
             <a onClick={() => this.process(record)}>点击处理</a>
           </span>)
       }
@@ -144,11 +149,16 @@ class OtherList extends React.PureComponent {
     queryLog({ name: record.name }).then(res => {
       if (res.code === 0) {
         res.data.rejectReason = ''
+        res.data.state = 1
         this.setState({ showRv: true, params: res.data, record: record })
       }
     })
   }
 
+  viewCode = (record) => {
+    this.setState({ showVCModal: true, vParams:record})
+  }
+
   onRvOk = () => {
     const { state } = this.state.params
     console.log('数据1:' + JSON.stringify(this.state.params))
@@ -208,13 +218,18 @@ class OtherList extends React.PureComponent {
     this.setState({ showRv: false })
   }
 
+  onVCMCancel = () => {
+    this.setState({ showVCModal: false })
+  }
+
   render () {
-    const { params, showRv } = this.state
+    const { params, showRv, showVCModal, vParams} = this.state
     return (
       <div>
         <FilterTable filterSetting={this.filterSetting} tableSetting={this.tableSetting} apiUrl={apiUrl}
         />
         <Rv showModal={showRv} params={params} onChange={this.onParamsChange} onOk={this.onRvOk} onCancel={this.onRvCancel} />
+        <VCM showModal={showVCModal} params={vParams} onChange={this.onParamsChange} onOk={this.onVCMCancel} onCancel={this.onVCMCancel} />
       </div>
     )
   }

+ 42 - 0
src/pages/fengkong/view/other/viewCodeModal.js

@@ -0,0 +1,42 @@
+import React, { Component } from 'react'
+import { Modal, Form } from 'antd'
+import AceEditor from 'react-ace'
+import 'ace-builds/src-noconflict/mode-java'
+import 'ace-builds/src-noconflict/theme-monokai'
+
+export default class ViewCodeModal extends Component {
+  render () {
+    const { showModal, params, onChange, onOk, onCancel, fetching } = this.props
+    return (
+      <Modal
+        width={800}
+        title={'待审核代码'}
+        visible={showModal}
+        onOk={onOk}
+        onCancel={onCancel}
+        okButtonProps={{ disabled: fetching }}
+      >
+        <Form.Item label="代码">
+            <AceEditor
+              style={{ width: '100%' }}
+              mode="java"
+              theme="monokai"
+              name="content"
+              fontSize={14}
+              showPrintMargin={true}
+              showGutter={true}
+              highlightActiveLine={true}
+              value={params.content}
+              setOptions={{
+                enableBasicAutocompletion: true,
+                enableLiveAutocompletion: true,
+                enableSnippets: true,
+                showLineNumbers: true,
+                tabSize: 2
+              }}
+            />
+          </Form.Item>
+      </Modal>
+    )
+  }
+}