| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697989910010110210310410510610710810911011111211311411511611711811912012112212312412512612712812913013113213313413513613713813914014114214314414514614714814915015115215315415515615715815916016116216316416516616716816917017117217317417517617717817918018118218318418518618718818919019119219319419519619719819920020120220320420520620720820921021121221321421521621721821922022122222322422522622722822923023123223323423523623723823924024124224324424524624724824925025125225325425525625725825926026126226326426526626726826927027127227327427527627727827928028128228328428528628728828929029129229329429529629729829930030130230330430530630730830931031131231331431531631731831932032132232332432532632732832933033133233333433533633733833934034134234334434534634734834935035135235335435535635735835936036136236336436536636736836937037137237337437537637737837938038138238338438538638738838939039139239339439539639739839940040140240340440540640740840941041141241341441541641741841942042142242342442542642742842943043143243343443543643743843944044144244344444544644744844945045145245345445545645745845946046146246346446546646746846947047147247347447547647747847948048148248348448548648748848949049149249349449549649749849950050150250350450550650750850951051151251351451551651751851952052152252352452552652752852953053153253353453553653753853954054154254354454554654754854955055155255355455555655755855956056156256356456556656756856957057157257357457557657757857958058158258358458558658758858959059159259359459559659759859960060160260360460560660760860961061161261361461561661761861962062162262362462562662762862963063163263363463563663763863964064164264364464564664764864965065165265365465565665765865966066166266366466566666766866967067167267367467567667767867968068168268368468568668768868969069169269369469569669769869970070170270370470570670770870971071171271371471571671771871972072172272372472572672772872973073173273373473573673773873974074174274374474574674774874975075175275375475575675775875976076176276376476576676776876977077177277377477577677777877978078178278378478578678778878979079179279379479579679779879980080180280380480580680780880981081181281381481581681781881982082182282382482582682782882983083183283383483583683783883984084184284384484584684784884985085185285385485585685785885986086186286386486586686786886987087187287387487587687787887988088188288388488588688788888989089189289389489589689789889990090190290390490590690790890991091191291391491591691791891992092192292392492592692792892993093193293393493593693793893994094194294394494594694794894995095195295395495595695795895996096196296396496596696796896997097197297397497597697797897998098198298398498598698798898999099199299399499599699799899910001001100210031004100510061007100810091010101110121013101410151016101710181019102010211022102310241025102610271028102910301031 |
- <template>
- <div :class="type === '2' ? 'poolAdd poolDetail' : 'poolAdd'">
- <el-form
- ref="form"
- :model="form"
- :rules="type === '2' ? rules1 : rules"
- label-width="160px"
- class="special-el-form"
- >
- <h3>项目基础信息</h3>
- <el-divider></el-divider>
- <el-form-item label="项目名称" prop="projectName">
- <el-input
- maxlength="100"
- v-model="form.projectName"
- placeholder="请输入项目名称"
- :disabled="type === '2'"
- />
- </el-form-item>
- <el-form-item label="渠道" prop="tProjectChannel.channelName">
- <el-select
- :disabled="type === '2'"
- v-model="form.tProjectChannel.channelName"
- placeholder="请选择"
- clearable
- @change="handleChannel"
- >
- <el-option
- v-for="item in channelList"
- :key="item.id"
- :label="item.channelName"
- :value="item.id"
- />
- <el-option label="无" value="-1" />
- </el-select>
- <!-- <channelItem
- ref="channelItem"
- @getChannelInfo="getChannelInfo"
- ></channelItem> -->
- <!-- <el-input v-model="form.channel" placeholder="请输入渠道" /> -->
- </el-form-item>
- <el-form-item label="初次接触日期" prop="contactDate">
- <el-date-picker
- :disabled="type === '2'"
- clearable
- v-model="form.contactDate"
- type="date"
- value-format="yyyy-MM-dd"
- placeholder="请选择初次接触日期"
- >
- </el-date-picker>
- </el-form-item>
- <el-form-item label="所属组别">
- <el-select
- v-model="form.tProjectChannel.channelGroup"
- disabled
- placeholder="请选择所属组别"
- >
- <el-option
- v-for="dict in dict.type.project_group"
- :key="dict.value"
- :label="dict.label"
- :value="dict.value"
- ></el-option>
- </el-select>
- </el-form-item>
- <el-form-item label="所属行业" prop="industry">
- <el-select
- v-model="form.industry"
- placeholder="请选择所属行业"
- :disabled="type === '2'"
- >
- <el-option
- v-for="dict in dict.type.CUSTOMER_TRADE"
- :key="dict.value"
- :label="dict.label"
- :value="dict.value"
- ></el-option>
- </el-select>
- </el-form-item>
- <el-form-item label="项目负责人" prop="investHead">
- <el-input
- v-if="type === '2'"
- maxlength="30"
- v-model="form.investHead"
- :disabled="type === '2'"
- />
- <div
- class="el-input__inner inputSimulation"
- @click="openSelectDept"
- v-else
- >
- {{ form.investHead ? form.investHead : "请选择项目负责人" }}
- </div>
- <selecDept
- ref="selecDepts"
- @getDeptUserInfo="getDeptUserInfo"
- :deptId="deptId"
- ></selecDept>
- </el-form-item>
- <el-form-item
- label="项目情况描述"
- prop="description"
- class="special-el-form-item"
- >
- <el-input
- :disabled="type === '2'"
- maxlength="200"
- rows="4"
- type="textarea"
- v-model="form.description"
- placeholder="请输入项目情况描述"
- />
- </el-form-item>
- <h3>项目公司信息</h3>
- <el-divider></el-divider>
- <el-form-item label="公司名称" prop="tProjectCompany.companyName">
- <el-input
- :disabled="type === '2'"
- maxlength="100"
- v-model="form.tProjectCompany.companyName"
- placeholder="请输入公司名称"
- />
- </el-form-item>
- <el-form-item label="统一社会信用代码" prop="tProjectCompany.companyCode">
- <el-input
- :disabled="type === '2'"
- maxlength="35"
- v-model="form.tProjectCompany.companyCode"
- placeholder="请输入企业统一社会信用代码"
- />
- </el-form-item>
- <el-form-item label="营业开始时间" prop="tProjectCompany.startTime">
- <el-date-picker
- :disabled="type === '2'"
- clearable
- v-model="form.tProjectCompany.startTime"
- type="date"
- value-format="yyyy-MM-dd"
- placeholder="请选择营业开始时间"
- >
- </el-date-picker>
- </el-form-item>
- <el-form-item label="营业结束时间" prop="tProjectCompany.endTime">
- <el-date-picker
- :disabled="type === '2'"
- clearable
- v-model="form.tProjectCompany.endTime"
- type="date"
- value-format="yyyy-MM-dd"
- placeholder="请选择营业结束时间"
- >
- </el-date-picker>
- </el-form-item>
- <el-form-item
- label="注册资本(万元)"
- prop="tProjectCompany.registeredCapital"
- >
- <el-input
- :disabled="type === '2'"
- maxlength="20"
- v-model="form.tProjectCompany.registeredCapital"
- @input="
- (value) =>
- (form.tProjectCompany.registeredCapital = value
- .replace(/[^0-9.]/g, '')
- .replace(/^(\-)*(\d+)\.(\d\d\d\d).*$/, '$1$2.$3')
- .replace(/-/g, ''))
- "
- placeholder="请输入注册资本"
- />
- </el-form-item>
- <el-form-item label="实缴资本(万元)" prop="tProjectCompany.paidCapital">
- <el-input
- :disabled="type === '2'"
- maxlength="20"
- v-model="form.tProjectCompany.paidCapital"
- @input="
- (value) =>
- (form.tProjectCompany.paidCapital = value
- .replace(/[^0-9.]/g, '')
- .replace(/^(\-)*(\d+)\.(\d\d\d\d).*$/, '$1$2.$3')
- .replace(/-/g, ''))
- "
- placeholder="请输入实缴资本"
- />
- </el-form-item>
- <el-form-item label="实控人" prop="tProjectCompany.actualBod">
- <el-input
- :disabled="type === '2'"
- maxlength="25"
- v-model="form.tProjectCompany.actualBod"
- placeholder="请输入实控人"
- />
- </el-form-item>
- <el-form-item label="联系电话" prop="tProjectCompany.phone">
- <el-input
- :disabled="type === '2'"
- maxlength="20"
- v-model="form.tProjectCompany.phone"
- placeholder="请输入联系电话"
- />
- </el-form-item>
- <el-form-item label="所属类型" prop="tProjectCompany.type">
- <el-input
- :disabled="type === '2'"
- maxlength="25"
- v-model="form.tProjectCompany.type"
- placeholder="请输入所属类型"
- />
- </el-form-item>
- <el-form-item label="备案时间" prop="tProjectCompany.filingTime">
- <el-date-picker
- :disabled="type === '2'"
- clearable
- v-model="form.tProjectCompany.filingTime"
- type="date"
- value-format="yyyy-MM-dd"
- placeholder="请选择备案时间"
- >
- </el-date-picker>
- </el-form-item>
- <el-form-item
- label="注册地址"
- prop="tProjectCompany.registeredAddress"
- class="special-el-form-item"
- >
- <el-input
- :disabled="type === '2'"
- type="textarea"
- rows="4"
- maxlength="100"
- v-model="form.tProjectCompany.registeredAddress"
- placeholder="请输入注册地址"
- />
- </el-form-item>
- <el-form-item
- label="办公地址"
- prop="tProjectCompany.businessAddress"
- class="special-el-form-item"
- >
- <el-input
- :disabled="type === '2'"
- type="textarea"
- rows="4"
- maxlength="100"
- v-model="form.tProjectCompany.businessAddress"
- placeholder="请输入办公地址"
- />
- </el-form-item>
- <el-form-item
- label="公司附件"
- prop="listFile"
- class="special-el-form-item"
- >
- <fileItem
- ref="fileItem"
- :id="form.id"
- @getFileList="getFileList"
- ></fileItem>
- </el-form-item>
- <h3>项目公司联系人信息</h3>
- <el-divider></el-divider>
- <el-form-item label="联系人姓名" prop="tProjectContacts.name">
- <el-input
- :disabled="type === '2'"
- maxlength="25"
- v-model="form.tProjectContacts.name"
- placeholder="请输入联系人姓名"
- />
- </el-form-item>
- <el-form-item label="职位" prop="tProjectContacts.position">
- <el-input
- :disabled="type === '2'"
- maxlength="25"
- v-model="form.tProjectContacts.position"
- placeholder="请输入职位"
- />
- </el-form-item>
- <el-form-item label="联系电话/微信" prop="tProjectContacts.contact">
- <el-input
- :disabled="type === '2'"
- maxlength="25"
- v-model="form.tProjectContacts.contact"
- placeholder="请输入联系电话/微信"
- />
- </el-form-item>
- <h3>项目融资信息</h3>
- <el-divider></el-divider>
- <el-form-item label="项目融资阶段" prop="financingStage">
- <el-select
- :disabled="type === '2'"
- v-model="form.financingStage"
- placeholder="请选择项目融资阶段"
- >
- <el-option
- v-for="dict in dict.type.financing_stage"
- :key="dict.value"
- :label="dict.label"
- :value="dict.value"
- ></el-option>
- </el-select>
- </el-form-item>
- <el-form-item label="预期融资金额(万元)" prop="financingMoney">
- <el-input
- :disabled="type === '2'"
- maxlength="20"
- v-model="form.financingMoney"
- @input="
- (value) =>
- (form.financingMoney = value.replace(/\D/g, '').replace(/-/g, ''))
- "
- placeholder="请输入预期融资金额"
- />
- </el-form-item>
- <el-form-item label="投前估值(万元)" prop="investValuation">
- <el-input
- :disabled="type === '2'"
- maxlength="20"
- v-model="form.investValuation"
- @input="
- (value) =>
- (form.investValuation = value
- .replace(/[^0-9.]/g, '')
- .replace(/^(\-)*(\d+)\.(\d\d).*$/, '$1$2.$3')
- .replace(/-/g, ''))
- "
- placeholder="请输入投前估值"
- />
- </el-form-item>
- <el-form-item label="预计投资金额(万元)" prop="investMoney">
- <el-input
- :disabled="type === '2'"
- maxlength="20"
- v-model="form.investMoney"
- @input="
- (value) =>
- (form.investMoney = value.replace(/\D/g, '').replace(/-/g, ''))
- "
- placeholder="请输入预计投资金额"
- />
- </el-form-item>
- <!-- -->
- <el-form-item label="投资类型" prop="investType">
- <el-select
- v-model="form.investType"
- placeholder="请选择投资类型"
- :disabled="type === '2'"
- >
- <el-option
- v-for="dict in dict.type.invest_type"
- :key="dict.value"
- :label="dict.label"
- :value="dict.value"
- ></el-option>
- </el-select>
- </el-form-item>
- <el-form-item label="投资策略" prop="investPloy">
- <el-select
- v-model="form.investPloy"
- placeholder="请选择投资策略"
- :disabled="type === '2'"
- >
- <el-option
- v-for="dict in dict.type.invest_ploy"
- :key="dict.value"
- :label="dict.label"
- :value="dict.value"
- ></el-option>
- </el-select>
- </el-form-item>
- <el-form-item label="投资价值" prop="investWorth">
- <el-select
- v-model="form.investWorth"
- placeholder="请选择投资价值"
- :disabled="type === '2'"
- >
- <el-option
- v-for="dict in dict.type.invest_worth"
- :key="dict.value"
- :label="dict.label"
- :value="dict.value"
- ></el-option>
- </el-select>
- </el-form-item>
- <el-form-item
- label="历次融资"
- prop="previousFinancing"
- class="special-el-form-item"
- >
- <el-input
- :disabled="type === '2'"
- maxlength="200"
- rows="4"
- type="textarea"
- v-model="form.previousFinancing"
- placeholder="请输入历次融资"
- />
- </el-form-item>
- <el-form-item
- label="融资条件"
- prop="financingCondition"
- class="special-el-form-item"
- >
- <el-input
- :disabled="type === '2'"
- maxlength="200"
- rows="4"
- type="textarea"
- v-model="form.financingCondition"
- placeholder="请输入融资条件"
- />
- </el-form-item>
- <el-form-item
- label="投资亮点"
- prop="investSparkle"
- class="special-el-form-item"
- >
- <el-input
- :disabled="type === '2'"
- maxlength="200"
- rows="4"
- type="textarea"
- v-model="form.investSparkle"
- placeholder="请输入投资亮点"
- />
- </el-form-item>
- <el-form-item
- label="股权架构"
- prop="shareholding"
- class="special-el-form-item"
- >
- <el-input
- :disabled="type === '2'"
- maxlength="200"
- rows="4"
- type="textarea"
- v-model="form.shareholding"
- placeholder="请输入股权架构"
- />
- </el-form-item>
- <h3>其他</h3>
- <el-divider></el-divider>
- <el-form-item label="BP" prop="bpFile" class="special-el-form-item">
- <fileItem
- ref="bpFileItem"
- :id="form.id"
- @getFileList="getBPFileList"
- ></fileItem>
- </el-form-item>
- <el-form-item
- label="其他附件"
- prop="otherFile"
- class="special-el-form-item"
- >
- <fileItem
- ref="otherFileItem"
- :id="form.id"
- @getFileList="getOtherFileList"
- ></fileItem>
- </el-form-item>
- <el-form-item label="备注" prop="mark" class="special-el-form-item">
- <el-input
- :disabled="type === '2'"
- maxlength="200"
- :readonly="type === '2' ? true : false"
- rows="4"
- type="textarea"
- v-model="form.mark"
- placeholder="请输入备注"
- />
- </el-form-item>
- <el-form-item class="btnList" v-if="type === '1'">
- <el-button @click="goBack">返 回</el-button>
- <el-button type="warning" @click="submitForm(1)" v-preventReClick>暂 存</el-button>
- <el-button type="primary" @click="submitForm(2)" v-preventReClick>提 交</el-button>
- </el-form-item>
- </el-form>
- </div>
- </template>
- <script>
- import {getPool,investmentOpportunityStart} from "@/api/project/investOpp/pool";
- import { listChannel } from "@/api/invest/channel";
- import fileItem from "../../invest/components/fileItem";
- import channelItem from "../../invest/components/channelItem";
- import selecDept from "../../invest/components/selecDept";
- import { mapGetters } from "vuex";
- export default {
- props: {
- id: {
- type: String,
- },
- type: {
- type: String,
- default: "1", //1可编辑 2不可编辑
- },
- },
- components: { fileItem, channelItem, selecDept },
- dicts: [
- "CUSTOMER_TRADE",
- "project_group",
- "invest_type",
- "invest_ploy",
- "invest_worth",
- "financing_stage",
- ],
- data() {
- const validateLogo = (rule, value, callback) => {
- if (this.fileListBP.length <= 0) {
- callback(new Error("请上传BP"));
- } else {
- callback();
- }
- };
- return {
- deptId: process.env.VUE_APP_DEPTID,
- title: "新增项目",
- baseUrl: process.env.VUE_APP_BASE_API,
- // 表单参数
- form: {
- id: null,
- projectName: null,
- projectGroup: "",
- industry: null,
- recordDate: null,
- projectCode: null,
- channel: "",
- contactDate: null,
- projectDate: null,
- decisionDate: null,
- tProjectCompany: {
- companyName: null,
- companyCode: null,
- startTime: null,
- endTime: null,
- registeredCapital: null,
- registeredAddress: null,
- paidCapital: null,
- businessAddress: null,
- actualBod: null,
- phone: null,
- filingTime: null,
- type: null,
- },
- tProjectContacts: {
- name: null,
- position: null,
- contact: null,
- },
- tProjectChannel: {
- channelName: "",
- channelGroup: "",
- },
- description: null,
- projectContacts: null,
- investHead: null,
- previousFinancing: null,
- financingStage: null,
- financingCondition: null,
- financingMoney: null,
- financingDate: null,
- investSparkle: null,
- investValuation: null,
- investMoney: null,
- investType: null,
- investPloy: null,
- investWorth: null,
- shareholding: null,
- projectStage: null,
- projectState: null,
- mark: null,
- delFlag: null,
- createBy: null,
- createTime: null,
- updateBy: null,
- updateTime: null,
- listFile: null,
- bpFile: null,
- otherFile: null,
- },
- fileList: [],
- fileListBP: [],
- fileListOther: [],
- // 表单校验
- rules1: {},
- rules: {
- projectName: [{ required: true, trigger: "blur", message: "请输入" }],
- // channel: [{ required: true, trigger: "blur", message: "请输入" }],
- contactDate: [{ required: true, trigger: "blur", message: "请输入" }],
- // projectGroup: [
- // { required: true, trigger: "change", message: "请选择" },
- // ],
- industry: [{ required: true, trigger: "change", message: "请选择" }],
- investHead: [{ required: true, trigger: "blur", message: "请输入" }],
- bpFile: [{ required: true, validator: validateLogo }],
- "tProjectChannel.channelName": [
- { required: true, trigger: "change", message: "请选择" },
- ],
- // description: [{ required: true, trigger: "blur", message: "请输入" }],
- "tProjectCompany.companyName": [
- { required: true, trigger: "blur", message: "请输入" },
- ],
- "tProjectCompany.companyCode": [
- { required: true, trigger: "blur", message: "请输入" },
- ],
- "tProjectCompany.startTime": [
- { required: true, trigger: "blur", message: "请选择" },
- ],
- "tProjectCompany.endTime": [
- { required: true, trigger: "blur", message: "请选择" },
- ],
- "tProjectCompany.registeredCapital": [
- { required: true, trigger: "blur", message: "请输入" },
- ],
- "tProjectCompany.registeredAddress": [
- { required: true, trigger: "blur", message: "请输入" },
- ],
- "tProjectCompany.paidCapital": [
- { required: true, trigger: "blur", message: "请输入" },
- ],
- "tProjectCompany.businessAddress": [
- { required: true, trigger: "blur", message: "请输入" },
- ],
- "tProjectCompany.actualBod": [
- { required: true, trigger: "blur", message: "请输入" },
- ],
- "tProjectCompany.phone": [
- { required: true, trigger: "blur", message: "请输入联系电话" },
- // {
- // pattern: /^1[3456789]\d{9}$/,
- // message: "请输入正确的手机号",
- // trigger: "blur",
- // },
- ],
- "tProjectCompany.filingTime": [
- { required: true, trigger: "blur", message: "请选择" },
- ],
- "tProjectCompany.type": [
- { required: true, trigger: "blur", message: "请输入" },
- ],
- // files: [{ required: true, trigger: "blur", message: "请输入" }],
- "tProjectContacts.name": [
- { required: true, trigger: "blur", message: "请输入" },
- ],
- "tProjectContacts.position": [
- { required: true, trigger: "blur", message: "请输入" },
- ],
- "tProjectContacts.contact": [
- { required: true, trigger: "blur", message: "请输入" },
- ],
- financingStage: [
- { required: true, trigger: "change", message: "请选择" },
- ],
- financingMoney: [
- { required: true, trigger: "blur", message: "请输入" },
- ],
- investValuation: [
- { required: true, trigger: "blur", message: "请输入" },
- ],
- investMoney: [{ required: true, trigger: "blur", message: "请输入" }],
- investType: [{ required: true, trigger: "change", message: "请选择" }],
- investPloy: [{ required: true, trigger: "change", message: "请选择" }],
- investWorth: [{ required: true, trigger: "change", message: "请选择" }],
- // previousFinancing: [{ required: true, trigger: "blur", message: "请输入" }],
- // financingCondition: [
- // { required: true, trigger: "blur", message: "请输入" },
- // ],
- investSparkle: [{ required: true, trigger: "blur", message: "请输入" }],
- shareholding: [{ required: true, trigger: "blur", message: "请输入" }],
- // mark: [{ required: true, trigger: "blur", message: "请输入" }]
- },
- channelList: [],
- };
- },
- computed: {
- ...mapGetters(["user"]),
- },
- mounted() {
- new Promise((resolve, reject) => {
- listChannel({
- pageNum: 1,
- pageSize: 100,
- }).then((response) => {
- this.channelList = response.rows;
- resolve();
- });
- }).then(() => {
- if (this.id) {
- this.getPoolDetail(this.id);
- } else {
- this.reset();
- }
- });
- },
- methods: {
- // getListChannel() {
- // // 渠道
- // listChannel({
- // pageNum: 1,
- // pageSize: 100,
- // }).then((response) => {
- // this.channelList = response.rows;
- // });
- // },
- // 选择部门人
- openSelectDept() {
- this.$refs.selecDepts.show(1, this.user.userId);
- },
- getDeptUserInfo(info) {
- if (info.length > 0) {
- this.form.investHead = info[0].nickName;
- this.$refs.form.clearValidate(["investHead"]);
- }
- },
- // 获取渠道信息
- getChannelInfo(info) {
- if (info.length > 0) {
- this.form.channel = info[0].id;
- this.form.tProjectChannel.channelName = info[0].channelName;
- this.form.tProjectChannel.channelGroup = info[0].channelGroup;
- this.$refs.form.clearValidate(["channel"]);
- }
- },
- // 选择渠道
- handleChannel(vId) {
- let obj = {};
- obj = this.channelList.find((item) => {
- return item.id === vId;
- });
- if (obj && obj.id) {
- this.form.channel = obj.id;
- this.form.tProjectChannel.channelName = obj.channelName;
- this.form.tProjectChannel.channelGroup = obj.channelGroup;
- } else {
- this.form.channel = -1;
- this.form.tProjectChannel.channelName = "无";
- this.form.tProjectChannel.channelGroup = "";
- }
- },
- handleChannelItem() {
- this.$refs.channelItem.showChannelItem = true;
- },
- getPoolDetail(id) {
- getPool(id).then((response) => {
- this.form = response.data;
- let channeItem = this.channelList.find((item) => {
- if (this.form.channel == item.id) {
- return item;
- }
- });
- if (channeItem && channeItem.channelName) {
- this.form.tProjectChannel.channelName = channeItem.channelName;
- this.form.tProjectChannel.channelGroup = channeItem.channelGroup;
- } else {
- this.form.tProjectChannel = {
- channelName: "无",
- channelGroup: "",
- };
- }
- setTimeout(() => {
- if (this.type == "2") {
- this.$refs.fileItem.handleButton();
- this.$refs.bpFileItem.handleButton();
- this.$refs.otherFileItem.handleButton();
- }
- this.$refs.fileItem.fileList = [];
- this.$refs.fileItem.getListFileBusinessId(
- this.form.tProjectCompany.companyId
- );
- this.$refs.bpFileItem.fileList = [];
- this.$refs.bpFileItem.getListFileBusinessId(this.form.id, "9");
- this.$refs.otherFileItem.fileList = [];
- this.$refs.otherFileItem.getListFileBusinessId(this.form.id, "0");
- }, 300);
- });
- },
- // 获取fileList
- getFileList(fileList) {
- if (fileList && fileList.length > 0) {
- this.fileList = fileList;
- } else {
- this.fileList = [];
- }
- },
- getBPFileList(fileList) {
- if (fileList && fileList.length > 0) {
- this.fileListBP = fileList;
- this.$refs.form.clearValidate(["bpFile"]);
- } else {
- this.fileList = [];
- }
- },
- getOtherFileList(fileList) {
- if (fileList && fileList.length > 0) {
- this.fileListOther = fileList;
- } else {
- this.fileList = [];
- }
- },
- /** 提交按钮 */
- submitForm(flag) {
- let that = this;
- if (this.form.channel == "") {
- this.form.channel = -1;
- }
- if (flag === 1) {
- // 暂存
- this.form.flag='false';
- if (!this.form.projectName) {
- this.$modal.msgError("请输入项目名称");
- return false;
- }
- this.form.listFile = this.fileList;
- this.form.bpFile = this.fileListBP;
- this.form.otherFile = this.fileListOther;
- //console.log(this.form.id+"id----------------------");
- if (this.form.id != null) {
- /*updatePool(this.form).then((response) => {
- this.$modal.msgSuccess("暂存成功");
- setTimeout(() => {
- that.goBack();
- }, 1500);
- });*/
- } else {
- this.form.projectStage = "1";
- this.form.projectState = "a";
- this.form.projectGroup = this.form.tProjectChannel.channelGroup;
- investmentOpportunityStart(this.form).then((response) => {
- this.$modal.msgSuccess("暂存成功");
- this.$store.dispatch("getMyTaskInvestOppNumber"); //更新代办数量
- setTimeout(() => {
- //that.goBack();
- that.goMyTask();
- }, 1500);
- });
- }
- } else if (flag=== 2) {
- // 提交
- this.form.flag='true';
- this.$refs["form"].validate((valid, rules) => {
- if (valid) {
- this.form.listFile = this.fileList;
- this.form.bpFile = this.fileListBP;
- this.form.otherFile = this.fileListOther;
- this.form.tProjectCompany.registeredCapital =
- this.form.tProjectCompany.registeredCapital
- .replace(/[^0-9.]/g, "")
- .replace(/^(\-)*(\d+)\.(\d\d\d\d).*$/, "$1$2.$3")
- .replace(/-/g, "");
- this.form.tProjectCompany.paidCapital =
- this.form.tProjectCompany.paidCapital
- .replace(/[^0-9.]/g, "")
- .replace(/^(\-)*(\d+)\.(\d\d\d\d).*$/, "$1$2.$3")
- .replace(/-/g, "");
- this.form.investValuation = this.form.investValuation
- .replace(/[^0-9.]/g, "")
- .replace(/^(\-)*(\d+)\.(\d\d).*$/, "$1$2.$3")
- .replace(/-/g, "");
- this.form.financingMoney = this.form.financingMoney
- .replace(/\D/g, "")
- .replace(/-/g, "");
- this.form.investMoney = this.form.investMoney
- .replace(/\D/g, "")
- .replace(/-/g, "");
- if (this.form.id != null) {
- if (this.form.projectState == "1") {
- this.form.projectState = "a";
- }
- /*updatePool(this.form).then((response) => {
- this.$modal.msgSuccess("修改成功");
- setTimeout(() => {
- that.goBack();
- }, 1500);
- });*/
- } else {
- this.form.projectStage = "1";
- this.form.projectState = "a";
- this.form.projectGroup = this.form.tProjectChannel.channelGroup;
- investmentOpportunityStart(this.form).then((response) => {
- this.$modal.msgSuccess("新增成功");
- this.$store.dispatch("getMyTaskInvestOppNumber"); //更新代办数量
- setTimeout(() => {
- //that.goBack();
- that.goMyTask();
- }, 1500);
- });
- }
- } else {
- for (var ruleName in rules) {
- let _rule = rules[ruleName];
- let message = _rule[0].message;
- this.$message.warning(message, 1);
- break;
- }
- //验证不通过回滚到不通过的第一个位置
- this.$nextTick(() => {
- let isError = document.getElementsByClassName("is-error");
- isError[0].scrollIntoView({
- block: "center",
- behavior: "smooth",
- });
- });
- }
- });
- }
- },
- //返回
- goBack() {
- this.$router.go(-1);
- },
- //跳转到我的任务-项目机会
- goMyTask(){
- //this.$router.push({ path: "/myTask/project/investOpp/myTask"});
- // 关闭当前标签页并返回指定页面
- const obj = { path: "/myTask/project/investOpp/myTask", query: { t: Date.now()} };
- this.$tab.closeOpenPage(obj);
- },
- // 表单重置
- reset() {
- this.form = {
- id: null,
- projectName: null,
- projectGroup: "",
- industry: null,
- recordDate: null,
- projectCode: null,
- channel: "",
- contactDate: null,
- projectDate: null,
- decisionDate: null,
- tProjectCompany: {
- companyName: null,
- companyCode: null,
- startTime: null,
- endTime: null,
- registeredCapital: null,
- registeredAddress: null,
- paidCapital: null,
- businessAddress: null,
- actualBod: null,
- phone: null,
- filingTime: null,
- type: null,
- },
- tProjectContacts: {
- name: null,
- position: null,
- contact: null,
- },
- tProjectChannel: {
- channelName: "",
- channelGroup: "",
- },
- description: null,
- projectContacts: null,
- investHead: this.user.nickName,
- previousFinancing: null,
- financingStage: null,
- financingCondition: null,
- financingMoney: null,
- financingDate: null,
- investSparkle: null,
- investValuation: null,
- investMoney: null,
- investType: null,
- investPloy: null,
- investWorth: null,
- shareholding: null,
- projectStage: null,
- projectState: null,
- mark: null,
- delFlag: null,
- createBy: null,
- createTime: null,
- updateBy: null,
- updateTime: null,
- listFile: null,
- bpFile: null,
- otherFile: null,
- };
- this.resetForm("form");
- },
- },
- };
- </script>
- <style lang="scss" scoped>
- .poolAdd {
- h2 {
- margin-left: 30px;
- }
- .special-el-form {
- h3 {
- width: 100%;
- margin-bottom: -10px;
- font-weight: bold;
- }
- .btnList {
- width: 100%;
- display: flex;
- justify-content: center;
- padding-bottom: 40px;
- }
- }
- }
- .poolDetail {
- position: relative;
- // cursor: not-allowed;
- }
- .poolDetail ::placeholder {
- color: #f5f7fa !important;
- }
- // .poolDetail::after {
- // content: "";
- // display: block;
- // position: absolute;
- // top: 0;
- // left: 0;
- // width: 100%;
- // height: 120%;
- // }
- </style>
|