import React,{Component,Fragment} from 'react'
import { Page,Validator,Notification,FormItem,DatePickerItem,TextAreaItem,CheckboxItem,Checkbox,InputItem,Input,Bind,SelectItem,Button,Label,Image,Table,Steps } from '@/components/Common-Library'
import Api from '@/service/api'
import mBptsel from '../model'
import CodeTableFactory from '@/components/CodeTable'

import "./index.less"
import { inject, observer } from 'mobx-react'
import { action, observable,runInAction } from 'mobx'
 
import Ovwp from './Ovwp'
import Detp from './Detp'

import { Card } from 'antd'

const CodeTable = CodeTableFactory.getInstance()
const StepItem = Steps.Item

@inject('UserContext')
@inject('i18n')
@observer
export default class BptselScreen extends Page
{
    @observable
    formBlur=false

    @observable
		extra = { inifrm: 'bptsel', sptinr: '', ownbch: [] }
 
  constructor(props)
  {
      super(props)
      this.model = new mBptsel()
			this.bind = Bind.bind(this)
			this.state={
				flag:true
			}
  }
	
	async componentWillMount(){
		/*
		*添加初始化代码
		*/
		let objinr = '';
		let objtyp = '';
		let rtnmsg = [];
		if (this.props.location.query) {
      objinr = this.props.location.query.inr
      objtyp = this.props.location.query.objtyp
      rtnmsg = await Api.post(this.extra.inifrm + '/init', { params: { objinr,objtyp } })
		} else {
			rtnmsg = await Api.post(this.extra.inifrm + '/init', {})
		}
		if (rtnmsg.retcod == SUCCESS) {
      Object.assign(this.model, rtnmsg.data)
      this.extra.ownbch=rtnmsg.codetable.ownbch
      this.model.bptp_bustyp = "EXP"
			this.setState({ flag: false })
		}
		else {
			Notification.error({ message: '服务端请求失败!' })
    }
    
		//快照模式下，不必开启校验，否则，静默校验，和记录变动
		!this.loadDisplay() && this.model.openMonitor() //开启校验	
	}

  componentWillUnmount()
  {
    this.model.stopMonitor&&this.model.stopMonitor()//关闭校验
  }


    //交易内实现
    renderPage(){
			const bind = this.bind
      const {i18n} = this.props
             
        return (
					<Card title="卖方融资" size="small" className="transTitle">
						<Steps>
							
							<StepItem title="融资放款">
								<Ovwp model={this.model} extra={this.extra} flag={this.state.flag} />
							</StepItem>

							<StepItem title="融资展期">
								<Detp model={this.model} extra={this.extra} flag="1" />
							</StepItem>
              
							<StepItem title="融资还款">
								<Detp model={this.model} extra={this.extra} flag="2" />
							</StepItem>

						</Steps>
					</Card>
				)
	}
}
