|
@@ -3,38 +3,38 @@
|
|
|
<div id="title">
|
|
|
<div class="school">深圳技师学院</div>
|
|
|
<div class="wordTitle">学 生 创 客 项 目 申 报 书</div>
|
|
|
- <div class="date">申请日期: xxxx年 xx月 xx日</div>
|
|
|
+ <div class="date">申请日期:{{wordData.applicationDate}}</div>
|
|
|
</div>
|
|
|
<table border="1" cellspacing="0" class="table">
|
|
|
-
|
|
|
|
|
|
- <tr>
|
|
|
- <td colspan="2">项目名称</td><td colspan="5">
|
|
|
+ <tr id="projectName">
|
|
|
+ <td colspan="2" ref="projectName">项目名称</td><td colspan="5" >
|
|
|
<el-input
|
|
|
type="textarea"
|
|
|
autosize
|
|
|
style="width: 100%;"
|
|
|
resize="none"
|
|
|
+
|
|
|
placeholder="请输入项目名称"
|
|
|
- v-model="data.projectName">
|
|
|
+ v-model="wordData.projectName">
|
|
|
</el-input>
|
|
|
</td>
|
|
|
</tr>
|
|
|
- <tr>
|
|
|
- <td rowspan="2" colspan="2">项目分组</td><td>
|
|
|
- <el-radio v-model="data.radio" label="1">创意组</el-radio>
|
|
|
+ <tr id="radio">
|
|
|
+ <td rowspan="2" colspan="2" ref="radio">项目分组</td><td>
|
|
|
+ <el-radio v-model="wordData.radio" label="创意组">创意组</el-radio>
|
|
|
</td>
|
|
|
<td colspan="4">立项项目为新立项项目,项目成果应具有较好的创意和较为成型的产品原型或能提供较好的商业模式,产生较好的社会效益。</td>
|
|
|
</tr>
|
|
|
<tr>
|
|
|
<td>
|
|
|
- <el-radio v-model="data.radio" label="2">初创组</el-radio>
|
|
|
+ <el-radio v-model="wordData.radio" label="初创组">初创组</el-radio>
|
|
|
</td>
|
|
|
<td colspan="4">立项项目为学校已结题学生创客项目或已入驻学校创业孵化基地的学生初创企业项目(毕业两年内),项目成果应为原结题项目基础上的技术升级、企业注册、规模扩张。</td>
|
|
|
</tr>
|
|
|
- <tr>
|
|
|
- <td colspan="2">优先支持项目(可多选)</td> <td colspan="5">
|
|
|
- <el-checkbox-group v-model="data.checkList">
|
|
|
+ <tr id="checkList">
|
|
|
+ <td colspan="2" ref="checkList">优先支持项目(可多选)</td> <td colspan="5">
|
|
|
+ <el-checkbox-group v-model="wordData.checkList">
|
|
|
<el-checkbox label="大赛选拔项目"></el-checkbox>
|
|
|
<el-checkbox label="落地注册项目"></el-checkbox>
|
|
|
<el-checkbox label="社会征集项目"></el-checkbox>
|
|
@@ -42,93 +42,88 @@
|
|
|
</el-checkbox-group>
|
|
|
</td>
|
|
|
</tr>
|
|
|
- <tr>
|
|
|
- <td colspan="2">美丽校园改造项目(特色项目)</td> <td colspan="5">
|
|
|
- <el-radio v-model="data.schoolRadio" label="1">校园安全项目</el-radio>
|
|
|
- <el-radio v-model="data.schoolRadio" label="2">环境治理项目</el-radio>
|
|
|
- <el-radio v-model="data.schoolRadio" label="3">校园服务项目</el-radio>
|
|
|
- <el-radio v-model="data.schoolRadio" label="4">文创装置项目</el-radio>
|
|
|
+ <tr id="schoolRadio">
|
|
|
+ <td colspan="2" ref="schoolRadio">美丽校园改造项目(特色项目)</td> <td colspan="5">
|
|
|
+ <el-radio v-model="wordData.schoolRadio" label="校园安全项目">校园安全项目</el-radio>
|
|
|
+ <el-radio v-model="wordData.schoolRadio" label="环境治理项目">环境治理项目</el-radio>
|
|
|
+ <el-radio v-model="wordData.schoolRadio" label="校园服务项目">校园服务项目</el-radio>
|
|
|
+ <el-radio v-model="wordData.schoolRadio" label="文创装置项目">文创装置项目</el-radio>
|
|
|
</td>
|
|
|
</tr>
|
|
|
- <tr>
|
|
|
- <td colspan="2">项 目 申 请 人</td><td colspan="2">
|
|
|
- <el-radio v-model="data.applyParsonRadio" label="1">在校学生</el-radio>
|
|
|
+ <tr id="applyParsonRadio">
|
|
|
+ <td colspan="2" ref="applyParsonRadio" >项 目 申 请 人</td><td colspan="2">
|
|
|
+ <el-radio v-model="wordData.applyParsonRadio" label="在校学生">在校学生</el-radio>
|
|
|
</td><td colspan="3">
|
|
|
- <el-radio v-model="data.applyParsonRadio" label="2">入驻学校孵化基地的初创企业法人</el-radio>
|
|
|
+ <el-radio v-model="wordData.applyParsonRadio" label="入驻学校孵化基地的初创企业法人">入驻学校孵化基地的初创企业法人</el-radio>
|
|
|
</td>
|
|
|
</tr>
|
|
|
- <tr>
|
|
|
- <td colspan="2">申 请 人 姓 名</td><td colspan="1">
|
|
|
+ <tr id="applyParsonName">
|
|
|
+ <td colspan="2" ref="applyParsonName">申 请 人 姓 名</td><td colspan="1">
|
|
|
<el-input
|
|
|
type="textarea"
|
|
|
autosize
|
|
|
style="width: 100%;"
|
|
|
resize="none"
|
|
|
placeholder="请输入姓名"
|
|
|
- v-model="data.applyParsonName">
|
|
|
+ v-model="wordData.applyParsonName">
|
|
|
</el-input>
|
|
|
</td>
|
|
|
- <td>参与学院/公司</td>
|
|
|
+ <td ref="college">参与学院/公司</td>
|
|
|
<td>
|
|
|
- <el-input
|
|
|
- type="textarea"
|
|
|
- autosize
|
|
|
- style="width: 100%;"
|
|
|
- resize="none"
|
|
|
- placeholder="请输入学院"
|
|
|
- v-model="data.college">
|
|
|
- </el-input>
|
|
|
- </td><td>联系电话</td><td>
|
|
|
- <el-input
|
|
|
- type="textarea"
|
|
|
- autosize
|
|
|
- style="width: 100%;"
|
|
|
- resize="none"
|
|
|
- placeholder="请输入电话"
|
|
|
- v-model="data.tel">
|
|
|
- </el-input>
|
|
|
- </td>
|
|
|
- </tr>
|
|
|
- <tr>
|
|
|
- <td colspan="2">项 目 起 始 时 间</td>
|
|
|
+ <el-select v-model="wordData.college" style="width: 100%;" placeholder="请选择所在学院">
|
|
|
+ <el-option
|
|
|
+ v-for="item in DepartmentData"
|
|
|
+ :key="item.id"
|
|
|
+ :label="item.name"
|
|
|
+ :value="item.id">
|
|
|
+ </el-option>
|
|
|
+ </el-select>
|
|
|
+ </td><td ref="tel">联系电话</td><td>
|
|
|
+ <el-input type="number" v-model="wordData.tel" @blur="getText(wordData.tel)" placeholder="请输入联系方式"></el-input>
|
|
|
+ </td>
|
|
|
+ </tr>
|
|
|
+ <tr id="beginTime">
|
|
|
+ <td colspan="2" ref="beginTime">项 目 起 始 时 间</td>
|
|
|
<td colspan="2">
|
|
|
<el-date-picker
|
|
|
- v-model="data.beginTime"
|
|
|
- type="date"
|
|
|
- placeholder="请选择项目计划完成时间"
|
|
|
- prefix-icon="none"
|
|
|
- value-format="yyyy-MM-dd HH:mm:ss">
|
|
|
- </el-date-picker></td>
|
|
|
- <td>计划完成时间</td>
|
|
|
- <td colspan="2"><el-date-picker
|
|
|
- v-model="data.endTime"
|
|
|
+ v-model="wordData.beginTime"
|
|
|
type="date"
|
|
|
placeholder="请选择项目计划完成时间"
|
|
|
prefix-icon="none"
|
|
|
value-format="yyyy-MM-dd HH:mm:ss">
|
|
|
</el-date-picker></td>
|
|
|
+ <td ref="endTime">计划完成时间</td>
|
|
|
+ <td colspan="2">
|
|
|
+ <el-date-picker
|
|
|
+ v-model="wordData.endTime"
|
|
|
+ type="date"
|
|
|
+ placeholder="请选择项目计划完成时间"
|
|
|
+ prefix-icon="none"
|
|
|
+ value-format="yyyy-MM-dd HH:mm:ss">
|
|
|
+ </el-date-picker>
|
|
|
+ </td>
|
|
|
</tr>
|
|
|
<tr>
|
|
|
<td colspan="2">项 目 组 人 数</td>
|
|
|
<td>
|
|
|
|
|
|
- {{ data.studentS.length + data.teacherS.length }}
|
|
|
+ {{ wordData.studentS.length + wordData.teacherS.length }}
|
|
|
|
|
|
</td>
|
|
|
<td>参与学生人数</td>
|
|
|
<td>
|
|
|
|
|
|
- {{ data.studentS.length }}
|
|
|
+ {{ wordData.studentS.length }}
|
|
|
</td>
|
|
|
<td>参与教师人数</td>
|
|
|
<td>
|
|
|
- {{ data.teacherS.length }}
|
|
|
+ {{ wordData.teacherS.length }}
|
|
|
</td>
|
|
|
</tr>
|
|
|
- <tr>
|
|
|
- <td rowspan="6">项目组学生成员(至少2个学院以上学生构成,团队5人以上)</td><td>姓名</td><td colspan="2">所在学院/部门/专业</td><td colspan="3">项目组角色分工</td>
|
|
|
+ <tr id="studentS">
|
|
|
+ <td :rowspan="wordData.studentS.length+1" ref="studentS">项目组学生成员(至少2个学院以上学生构成,团队5人以上)</td><td>姓名</td><td colspan="2">所在学院/部门/专业</td><td colspan="3">项目组角色分工</td>
|
|
|
</tr>
|
|
|
- <tr v-for="(item,index) in data.studentS" :key="index+'a'">
|
|
|
+ <tr style="position: relative;" v-for="(item,index) in wordData.studentS" :key="index+'a'">
|
|
|
<td>
|
|
|
<el-input
|
|
|
type="textarea"
|
|
@@ -146,7 +141,7 @@
|
|
|
style="width: 100%;"
|
|
|
resize="none"
|
|
|
placeholder="请输入所在学院/部门/专业"
|
|
|
- v-model="item.college">
|
|
|
+ v-model="item.collage">
|
|
|
</el-input>
|
|
|
</td>
|
|
|
<td colspan="3">
|
|
@@ -159,11 +154,15 @@
|
|
|
v-model="item.work">
|
|
|
</el-input>
|
|
|
</td>
|
|
|
+ <div class="operate">
|
|
|
+ <el-button @click="addStudent" v-if="wordData.studentS.length==index+1" type="primary" size="mini">+</el-button>
|
|
|
+ <el-button v-if="wordData.studentS.length>6" @click="DelStudent(index)" type="primary" size="mini">-</el-button>
|
|
|
+ </div>
|
|
|
</tr>
|
|
|
- <tr>
|
|
|
- <td :rowspan="data.teacherS.length+1">项目组指导教师(2个学院以上,团队2-3人)</td><td>姓名</td><td colspan="2">所在学院/部门/专业</td><td colspan="3">项目组角色分工</td>
|
|
|
+ <tr id="teacherS">
|
|
|
+ <td :rowspan="wordData.teacherS.length+1" ref="teacherS">项目组指导教师(2个学院以上,团队2-3人)</td><td>姓名</td><td colspan="2">所在学院/部门/专业</td><td colspan="3">项目组角色分工</td>
|
|
|
</tr>
|
|
|
- <tr v-for="(item,index) in data.teacherS" :key="index+'b'">
|
|
|
+ <tr style="position: relative !important;" v-for="(item,index) in wordData.teacherS" :key="index+'b'">
|
|
|
<td>
|
|
|
<el-input
|
|
|
type="textarea"
|
|
@@ -181,7 +180,7 @@
|
|
|
style="width: 100%;"
|
|
|
resize="none"
|
|
|
placeholder="请输入所在学院/部门/专业"
|
|
|
- v-model="item.college">
|
|
|
+ v-model="item.collage">
|
|
|
</el-input>
|
|
|
</td>
|
|
|
<td colspan="3">
|
|
@@ -194,9 +193,17 @@
|
|
|
v-model="item.work">
|
|
|
</el-input>
|
|
|
</td>
|
|
|
+ <div class="operate">
|
|
|
+ <el-button @click="addTeacher" v-if="wordData.teacherS.length==index+1" type="primary" size="mini">+</el-button>
|
|
|
+ <el-button v-if="wordData.teacherS.length!=2" @click="DelTeacher(index)" type="primary" size="mini">-</el-button>
|
|
|
+ </div>
|
|
|
+ <!-- <div style="position: absolute;">
|
|
|
+ <div>+</div>
|
|
|
+ <div>_</div>
|
|
|
+ </div> -->
|
|
|
</tr>
|
|
|
- <tr>
|
|
|
- <td rowspan="5">研发内容</td><td style="text-align: left;position: relative;" colspan="6" class="textLeft">
|
|
|
+ <tr id="brief">
|
|
|
+ <td rowspan="5" ref="brief">研发内容</td><td style="text-align: left;position: relative;" colspan="6" class="textLeft">
|
|
|
<p>项目简介(200-300字)</p>
|
|
|
<el-input
|
|
|
type="textarea"
|
|
@@ -204,9 +211,9 @@
|
|
|
resize="none"
|
|
|
placeholder="请输入项目简介"
|
|
|
style="width: 100%;"
|
|
|
- v-model="data.brief">
|
|
|
+ v-model="wordData.brief">
|
|
|
</el-input>
|
|
|
- <div style="color: #ccc;position: absolute;right: 60px;bottom: 10px;">{{ data.brief.length }}/300</div>
|
|
|
+ <div style="color: #ccc;position: absolute;right: 60px;bottom: 10px;">{{ wordData.brief.length }}/300</div>
|
|
|
</td>
|
|
|
</tr>
|
|
|
<tr>
|
|
@@ -217,7 +224,7 @@
|
|
|
:rows="6"
|
|
|
style="width: 100%;"
|
|
|
resize="none"
|
|
|
- v-model="data.introduce.back">
|
|
|
+ v-model="wordData.introduce.back">
|
|
|
</el-input>
|
|
|
</td>
|
|
|
</tr>
|
|
@@ -229,7 +236,7 @@
|
|
|
:rows="6"
|
|
|
style="width: 100%;"
|
|
|
resize="none"
|
|
|
- v-model="data.introduce.innovate">
|
|
|
+ v-model="wordData.introduce.innovate">
|
|
|
</el-input>
|
|
|
</td>
|
|
|
</tr>
|
|
@@ -241,7 +248,7 @@
|
|
|
:rows="6"
|
|
|
style="width: 100%;"
|
|
|
resize="none"
|
|
|
- v-model="data.introduce.path">
|
|
|
+ v-model="wordData.introduce.path">
|
|
|
</el-input>
|
|
|
</td>
|
|
|
</tr>
|
|
@@ -253,7 +260,7 @@
|
|
|
:rows="6"
|
|
|
style="width: 100%;"
|
|
|
resize="none"
|
|
|
- v-model="data.introduce.scene">
|
|
|
+ v-model="wordData.introduce.scene">
|
|
|
</el-input>
|
|
|
</td>
|
|
|
</tr>
|
|
@@ -266,7 +273,7 @@
|
|
|
:rows="6"
|
|
|
style="width: 100%;"
|
|
|
resize="none"
|
|
|
- v-model="data.introduce.worth">
|
|
|
+ v-model="wordData.introduce.worth">
|
|
|
</el-input>
|
|
|
</td>
|
|
|
</tr>
|
|
@@ -279,7 +286,7 @@
|
|
|
:rows="6"
|
|
|
style="width: 100%;"
|
|
|
resize="none"
|
|
|
- v-model="data.introduce.team">
|
|
|
+ v-model="wordData.introduce.team">
|
|
|
</el-input>
|
|
|
</td>
|
|
|
</tr>
|
|
@@ -292,7 +299,7 @@
|
|
|
:rows="6"
|
|
|
style="width: 100%;"
|
|
|
resize="none"
|
|
|
- v-model="data.introduce.cost">
|
|
|
+ v-model="wordData.introduce.cost">
|
|
|
</el-input>
|
|
|
</td>
|
|
|
</tr>
|
|
@@ -305,7 +312,7 @@
|
|
|
:rows="6"
|
|
|
style="width: 100%;"
|
|
|
resize="none"
|
|
|
- v-model="data.introduce.expectResults">
|
|
|
+ v-model="wordData.introduce.expectResults">
|
|
|
</el-input>
|
|
|
</td>
|
|
|
</tr>
|
|
@@ -317,7 +324,7 @@
|
|
|
:rows="6"
|
|
|
style="width: 100%;"
|
|
|
resize="none"
|
|
|
- v-model="data.introduce.expectResultsTeacher">
|
|
|
+ v-model="wordData.introduce.expectResultsTeacher">
|
|
|
</el-input>
|
|
|
</td>
|
|
|
</tr>
|
|
@@ -329,7 +336,7 @@
|
|
|
:rows="6"
|
|
|
style="width: 100%;"
|
|
|
resize="none"
|
|
|
- v-model="data.introduce.expectResultsTeacher">
|
|
|
+ v-model="wordData.introduce.expectResultsTeacher">
|
|
|
</el-input>
|
|
|
</td>
|
|
|
</tr>
|
|
@@ -338,20 +345,20 @@
|
|
|
<td style="text-align: left;" colspan="6" class="textLeft">
|
|
|
<el-input
|
|
|
type="textarea"
|
|
|
- :rows="6"
|
|
|
+ :rows="8"
|
|
|
style="width: 100%;"
|
|
|
resize="none"
|
|
|
- v-model="input">
|
|
|
+ v-model="wordData.plan">
|
|
|
</el-input>
|
|
|
</td>
|
|
|
</tr>
|
|
|
- <tr>
|
|
|
- <td rowspan="12">预算经费</td><td>总经费</td><td colspan="5">
|
|
|
- {{ reversedMessage}}万
|
|
|
+ <tr id="fund">
|
|
|
+ <td rowspan="12" ref="fund">预算经费</td><td>总经费</td><td colspan="5">
|
|
|
+ {{ reversedMessage==0?'':reversedMessage}}万
|
|
|
</td>
|
|
|
</tr>
|
|
|
<tr>
|
|
|
- <td>支出类别</td><td colspan="2">支出项目</td><td>金额(元)</td><td colspan="2">备 注</td>
|
|
|
+ <td>支出类别</td><td colspan="2">支出项目</td><td>金额(元)</td><td colspan="4">备 注</td>
|
|
|
</tr>
|
|
|
<tr>
|
|
|
<td rowspan="5">直接费用</td>
|
|
@@ -360,12 +367,12 @@
|
|
|
<td colspan="2">小型仪器设备费</td>
|
|
|
<td>
|
|
|
<el-input
|
|
|
- type="textarea"
|
|
|
+ type="number"
|
|
|
autosize
|
|
|
style="width: 100%;"
|
|
|
resize="none"
|
|
|
placeholder="小型仪器设备费"
|
|
|
- v-model="data.fund.facility">
|
|
|
+ v-model="wordData.fund.facility">
|
|
|
</el-input>
|
|
|
</td><td colspan="2">
|
|
|
项目开展所需的小型专用仪器设备、工具、配件购置或租赁费用。
|
|
@@ -374,12 +381,12 @@
|
|
|
<tr>
|
|
|
<td colspan="2">材料费</td><td>
|
|
|
<el-input
|
|
|
- type="textarea"
|
|
|
+ type="number"
|
|
|
autosize
|
|
|
style="width: 100%;"
|
|
|
resize="none"
|
|
|
placeholder="材料费"
|
|
|
- v-model="data.fund.materials">
|
|
|
+ v-model="wordData.fund.materials">
|
|
|
</el-input>
|
|
|
</td><td colspan="2">
|
|
|
项目开展需消耗的各种原材料、辅助材料等低值易耗品的采购费用。
|
|
@@ -388,12 +395,12 @@
|
|
|
<tr>
|
|
|
<td colspan="2">测试化验加工费</td><td>
|
|
|
<el-input
|
|
|
- type="textarea"
|
|
|
+ type="number"
|
|
|
autosize
|
|
|
style="width: 100%;"
|
|
|
resize="none"
|
|
|
placeholder="测试化验加工费"
|
|
|
- v-model="data.fund.process">
|
|
|
+ v-model="wordData.fund.process">
|
|
|
</el-input>
|
|
|
</td><td colspan="2">
|
|
|
项目开展过程中支付给外单位的检验、测试、化验、计算、分析及加工费等费用。
|
|
@@ -402,12 +409,12 @@
|
|
|
<tr>
|
|
|
<td colspan="2">项目协作费</td><td>
|
|
|
<el-input
|
|
|
- type="textarea"
|
|
|
+ type="number"
|
|
|
autosize
|
|
|
style="width: 100%;"
|
|
|
resize="none"
|
|
|
placeholder="项目协作费"
|
|
|
- v-model="data.fund.assist">
|
|
|
+ v-model="wordData.fund.assist">
|
|
|
</el-input>
|
|
|
</td><td colspan="2">
|
|
|
按合同规定支付给协作单位的费用
|
|
@@ -420,12 +427,12 @@
|
|
|
<tr>
|
|
|
<td colspan="2">项目成果鉴定费</td><td>
|
|
|
<el-input
|
|
|
- type="textarea"
|
|
|
+ type="number"
|
|
|
autosize
|
|
|
style="width: 100%;"
|
|
|
resize="none"
|
|
|
placeholder="项目成果鉴定费"
|
|
|
- v-model="data.fund.authenticate">
|
|
|
+ v-model="wordData.fund.authenticate">
|
|
|
</el-input>
|
|
|
</td><td colspan="2">
|
|
|
学术会务费、评审费、鉴定费、成果集制作费等费用。
|
|
@@ -434,12 +441,12 @@
|
|
|
<tr>
|
|
|
<td colspan="2">参展参赛费</td><td>
|
|
|
<el-input
|
|
|
- type="textarea"
|
|
|
+ type="number"
|
|
|
autosize
|
|
|
style="width: 100%;"
|
|
|
resize="none"
|
|
|
placeholder="参展参赛费"
|
|
|
- v-model="data.fund.match">
|
|
|
+ v-model="wordData.fund.match">
|
|
|
</el-input>
|
|
|
</td><td colspan="2">
|
|
|
参加创客展会、竞赛等所需的报名费、展位费、布展费、宣传推广费及差旅费等费用。
|
|
@@ -448,12 +455,12 @@
|
|
|
<tr>
|
|
|
<td colspan="2">创客交流活动费</td><td>
|
|
|
<el-input
|
|
|
- type="textarea"
|
|
|
+ type="number"
|
|
|
autosize
|
|
|
style="width: 100%;"
|
|
|
resize="none"
|
|
|
placeholder="创客交流活动费"
|
|
|
- v-model="data.fund.activity">
|
|
|
+ v-model="wordData.fund.activity">
|
|
|
</el-input>
|
|
|
</td><td colspan="2">
|
|
|
创客交流活动中支付给校外专家的指导费、咨询费、授课费等费用。
|
|
@@ -462,12 +469,12 @@
|
|
|
<tr>
|
|
|
<td colspan="2">知识产权事务费</td><td>
|
|
|
<el-input
|
|
|
- type="textarea"
|
|
|
+ type="number"
|
|
|
autosize
|
|
|
style="width: 100%;"
|
|
|
resize="none"
|
|
|
placeholder="知识产权事务费"
|
|
|
- v-model="data.fund.affair">
|
|
|
+ v-model="wordData.fund.affair">
|
|
|
</el-input>
|
|
|
</td><td colspan="2">
|
|
|
论文版面费、专利及其他知识产权事务等费用。
|
|
@@ -479,7 +486,6 @@
|
|
|
type="textarea"
|
|
|
:rows="7"
|
|
|
resize="none"
|
|
|
- placeholder="111"
|
|
|
style="width: 100%;"
|
|
|
v-model="input">
|
|
|
</el-input>
|
|
@@ -493,7 +499,6 @@
|
|
|
type="textarea"
|
|
|
:rows="7"
|
|
|
resize="none"
|
|
|
- placeholder="111"
|
|
|
style="width: 100%;"
|
|
|
v-model="input">
|
|
|
</el-input>
|
|
@@ -506,9 +511,8 @@
|
|
|
<el-input
|
|
|
type="textarea"
|
|
|
:rows="7"
|
|
|
+ style="background-color: #fff;width: 100%;"
|
|
|
resize="none"
|
|
|
- placeholder="111"
|
|
|
- style="width: 100%;"
|
|
|
v-model="input">
|
|
|
</el-input>
|
|
|
<div style="text-align: right;font-size: 18px;width: 80%;margin-bottom: 20px;">负责人签章:</div>
|
|
@@ -521,20 +525,77 @@
|
|
|
<span>1.表格可顺延或另附页。</span>
|
|
|
<span>2.优先支持项目需提供与研发项目相关的实证材料并查看原件。</span>
|
|
|
<span>3.初创组已结题项目申请需提供结题验收证明、初创企业申请需提供入驻学校孵化基地协议书及公司营业执照。</span>
|
|
|
- <el-button style="width: 120px;margin: 20px auto;" type="primary">保存</el-button>
|
|
|
+ <div style="width: 300px;margin: 20px auto;display: flex;justify-content: space-between;">
|
|
|
+ <el-button style="width: 120px;margin: 20px auto;" @click="submitWord" type="primary">提交项目</el-button>
|
|
|
+ <el-button style="width: 120px;margin: 20px auto;" type="primary">下载表单</el-button>
|
|
|
+ </div>
|
|
|
</div>
|
|
|
</div>
|
|
|
</template>
|
|
|
|
|
|
<script>
|
|
|
+import {getNowDate} from '@/components/tool/Date.js'
|
|
|
+
|
|
|
export default {
|
|
|
- props:['data'],
|
|
|
+ // props:['data'],
|
|
|
data() {
|
|
|
return {
|
|
|
// teacher:[],
|
|
|
// student:[],
|
|
|
allFund:'',
|
|
|
input:"",
|
|
|
+ DepartmentData:[],
|
|
|
+
|
|
|
+ wordData:{
|
|
|
+ applicationDate:getNowDate(1),//申请日期
|
|
|
+ projectName:'',
|
|
|
+ radio: '',
|
|
|
+ checkList:[],
|
|
|
+ schoolRadio:'',
|
|
|
+ applyParsonRadio:'',
|
|
|
+ applyParsonName:'',
|
|
|
+ college:'',
|
|
|
+ tel:'',
|
|
|
+ beginTime:'',
|
|
|
+ endTime:'',
|
|
|
+ studentS:[
|
|
|
+ {name:'',collage:'',work:''},
|
|
|
+ {name:'',collage:'',work:''},
|
|
|
+ {name:'',collage:'',work:''},
|
|
|
+ {name:'',collage:'',work:''},
|
|
|
+ {name:'',collage:'',work:''},
|
|
|
+ {name:'',collage:'',work:''},
|
|
|
+ ],
|
|
|
+ teacherS:[
|
|
|
+ {name:'',collage:'',work:''},
|
|
|
+ {name:'',collage:'',work:''},
|
|
|
+ ],
|
|
|
+ brief:'',
|
|
|
+ introduce:{
|
|
|
+ back:'',
|
|
|
+ innovate:'',
|
|
|
+ path:'',
|
|
|
+ scene:'',
|
|
|
+ worth:'',
|
|
|
+ team:'',
|
|
|
+ cost:'',
|
|
|
+ expectResults:'',
|
|
|
+ expectResultsTeacher:'',
|
|
|
+ expectConversion:'',
|
|
|
+ plan:''
|
|
|
+ },
|
|
|
+ fund:{
|
|
|
+ facility:'',
|
|
|
+ materials:'',
|
|
|
+ process:'',
|
|
|
+ assist:'',
|
|
|
+ authenticate:'',
|
|
|
+ match:'',
|
|
|
+ activity:'',
|
|
|
+ affair:''
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
|
|
|
//total:总经费
|
|
|
//小型仪器设备费:device deviceRemarks
|
|
@@ -548,20 +609,189 @@
|
|
|
}
|
|
|
},
|
|
|
methods: {
|
|
|
- projectNam(){
|
|
|
- var newInput = document.createElement('input');
|
|
|
- }
|
|
|
+ getText(value) { //电话验证
|
|
|
+ let verify = /^(?:(?:\+|00)86)?1(?:(?:3[\d])|(?:4[5-79])|(?:5[0-35-9])|(?:6[5-7])|(?:7[0-8])|(?:8[\d])|(?:9[189]))\d{8}$/; //获取正则表达式 存放到verify变量中
|
|
|
+ let result = verify.test(value.trim()); //判断输入框内容是否符合 正则表达式
|
|
|
+ if(!result) return this.$message.error('请输入正确联系号码格式')
|
|
|
+ },
|
|
|
+ addTeacher(){ //添加老师
|
|
|
+ if (this.wordData.teacherS.length>=3) return this.$message.error('指导老师最多三人')
|
|
|
+ this.wordData.teacherS.push({name:"",collage:"",work:""});
|
|
|
+ },
|
|
|
+ DelTeacher(index){ //删除老师
|
|
|
+ this.wordData.teacherS.splice(index,1)
|
|
|
+ },
|
|
|
+ addStudent(){ //添加学生
|
|
|
+ this.wordData.studentS.push({name:"",collage:"",work:""});
|
|
|
+ },
|
|
|
+ DelStudent(index){ //删除学生
|
|
|
+ this.wordData.studentS.splice(index,1)
|
|
|
+ },
|
|
|
+ getProjectDepartmentData(){ //获取项目立项申请基础信息页面所在部门数据
|
|
|
+ this.ajax.get(this.$store.state.api+'/SelectAllDepartment',{
|
|
|
+ uid:this.$store.state.userInfo.userid
|
|
|
+ }).then(res=>{
|
|
|
+ this.DepartmentData = res.data[0]
|
|
|
+ },err=>{
|
|
|
+ console.log(err);
|
|
|
+ })
|
|
|
+ },
|
|
|
+ submitWord(){
|
|
|
+ const cEmpty = /^\s*$/g;
|
|
|
+ for (let i in this.wordData){
|
|
|
+ // console.log(this.wordData[i],i);
|
|
|
+ switch(i){
|
|
|
+ case 'projectName':
|
|
|
+ if (cEmpty.test(this.wordData[i])) {
|
|
|
+ this.$message.error('请输入项目名称')
|
|
|
+ // this.$refs.projectName.style.background='rgb(236, 141, 141)'
|
|
|
+ // setTimeout(() => {
|
|
|
+ // this.$refs.projectName.style.background='#ffffff'
|
|
|
+ // }, 2000);
|
|
|
+ document.querySelector('#projectName').scrollIntoView({ behavior: "smooth" });
|
|
|
+ return false
|
|
|
+ }
|
|
|
+ break;
|
|
|
+ case 'radio':
|
|
|
+ if (cEmpty.test(this.wordData[i])) {
|
|
|
+ this.$message.error('请选择项目分组')
|
|
|
+ document.querySelector('#radio').scrollIntoView({ behavior: "smooth" });
|
|
|
+ return false
|
|
|
+ }
|
|
|
+ break;
|
|
|
+ case 'checkList':
|
|
|
+ if (this.wordData[i].length==0) {
|
|
|
+ this.$message.error('优先支持项目')
|
|
|
+ document.querySelector('#checkList').scrollIntoView({ behavior: "smooth" });
|
|
|
+ return false
|
|
|
+ }
|
|
|
+ break;
|
|
|
+ case 'schoolRadio':
|
|
|
+ if (cEmpty.test(this.wordData[i])) {
|
|
|
+ this.$message.error('请选择美丽校园改造项目')
|
|
|
+ document.querySelector('#schoolRadio').scrollIntoView({ behavior: "smooth" });
|
|
|
+ return false
|
|
|
+ }
|
|
|
+ break;
|
|
|
+ case 'applyParsonRadio':
|
|
|
+ if (cEmpty.test(this.wordData[i])) {
|
|
|
+ this.$message.error('请选择项目申请人')
|
|
|
+ document.querySelector('#applyParsonRadio').scrollIntoView({ behavior: "smooth" });
|
|
|
+ return false
|
|
|
+ }
|
|
|
+ break;
|
|
|
+ case 'applyParsonName':
|
|
|
+ if (cEmpty.test(this.wordData[i])) {
|
|
|
+ this.$message.error('请填写申请人姓名')
|
|
|
+ document.querySelector('#applyParsonName').scrollIntoView({ behavior: "smooth" });
|
|
|
+ return false
|
|
|
+ }
|
|
|
+ break;
|
|
|
+ case 'college':
|
|
|
+ if (cEmpty.test(this.wordData[i])) {
|
|
|
+ this.$message.error('请选择所在学院')
|
|
|
+ document.querySelector('#applyParsonName').scrollIntoView({ behavior: "smooth" });
|
|
|
+ return false
|
|
|
+ }
|
|
|
+ break;
|
|
|
+ case 'tel':
|
|
|
+ if (cEmpty.test(this.wordData[i])) {
|
|
|
+ this.$message.error('请填写联系方式')
|
|
|
+ document.querySelector('#applyParsonName').scrollIntoView({ behavior: "smooth" });
|
|
|
+ return false
|
|
|
+ }
|
|
|
+ break;
|
|
|
+ case 'beginTime':
|
|
|
+ if (cEmpty.test(this.wordData[i])) {
|
|
|
+ this.$message.error('请选择项目起始时间')
|
|
|
+ document.querySelector('#beginTime').scrollIntoView({ behavior: "smooth" });
|
|
|
+ return false
|
|
|
+ }
|
|
|
+ break;
|
|
|
+ case 'endTime':
|
|
|
+ if (cEmpty.test(this.wordData[i])) {
|
|
|
+ this.$message.error('请选择计划完成时间')
|
|
|
+ document.querySelector('#beginTime').scrollIntoView({ behavior: "smooth" });
|
|
|
+ return false
|
|
|
+ }
|
|
|
+ break;
|
|
|
+ case 'studentS':
|
|
|
+ // if(this.wordData[i].length<5){
|
|
|
+ // this.$message.error('学生团队应5人以上')
|
|
|
+ // document.querySelector('#studentS').scrollIntoView({ behavior: "smooth" });
|
|
|
+ // return false;
|
|
|
+ // }else{
|
|
|
+ let snum = 0;
|
|
|
+ this.wordData[i].forEach(item=>{
|
|
|
+ for(let j in item){
|
|
|
+ if(cEmpty.test(item[j])){
|
|
|
+ snum++;
|
|
|
+ }
|
|
|
+ }
|
|
|
+ })
|
|
|
+ if(snum>0){
|
|
|
+ this.$message.error("请填完学生信息");
|
|
|
+ document.querySelector('#studentS').scrollIntoView({ behavior: "smooth" });
|
|
|
+ return false;
|
|
|
+ }
|
|
|
+ // }
|
|
|
+ break;
|
|
|
+ case 'teacherS':
|
|
|
+ let num = 0;
|
|
|
+ this.wordData[i].forEach(item=>{
|
|
|
+ for(let j in item){
|
|
|
+ if(cEmpty.test(item[j])){
|
|
|
+ num++;
|
|
|
+ }
|
|
|
+ }
|
|
|
+ })
|
|
|
+ if(num>0){
|
|
|
+ this.$message.error("请填完老师信息");
|
|
|
+ document.querySelector('#teacherS').scrollIntoView({ behavior: "smooth" });
|
|
|
+ return false;
|
|
|
+ }
|
|
|
+ break;
|
|
|
+ case 'brief':
|
|
|
+ if (cEmpty.test(this.wordData[i])) {
|
|
|
+ this.$message.error('请填写项目简介')
|
|
|
+ // this.$refs.brief.style.background='rgb(236, 141, 141)'
|
|
|
+ // setTimeout(() => {
|
|
|
+ // this.$refs.brief.style.background='#ffffff'
|
|
|
+ // }, 2000);
|
|
|
+ document.querySelector('#brief').scrollIntoView({ behavior: "smooth" });
|
|
|
+ return false
|
|
|
+ }
|
|
|
+ break;
|
|
|
+ case 'fund':
|
|
|
+ let mon=this.wordData.fund.facility*1 + this.wordData.fund.materials*1+this.wordData.fund.process*1+ this.wordData.fund.assist*1+this.wordData.fund.authenticate*1+ this.wordData.fund.match*1+this.wordData.fund.activity*1+this.wordData.fund.affair*1
|
|
|
+ if(mon==0){
|
|
|
+ document.querySelector('#fund').scrollIntoView({ behavior: "smooth" });
|
|
|
+ return this.$message.error('请输入经费')
|
|
|
+ }
|
|
|
+ break;
|
|
|
+ }
|
|
|
+ }
|
|
|
+ // let param={
|
|
|
+ // projectName
|
|
|
+ // }
|
|
|
+ // this.ajax
|
|
|
+ // .post(this.$store.state.api+'/SelectAllType',param)
|
|
|
+ // .then(err,res)
|
|
|
+ },
|
|
|
+
|
|
|
},
|
|
|
- computed:{
|
|
|
+ computed:{ //经费总合
|
|
|
reversedMessage: function () {
|
|
|
- // `this` 指向 vm 实例
|
|
|
- return this.data.fund.facility*1 + this.data.fund.materials*1+this.data.fund.process*1+ this.data.fund.assist*1+this.data.fund.authenticate*1+ this.data.fund.match*1+this.data.fund.activity*1+this.data.fund.affair*1
|
|
|
+ return (this.wordData.fund.facility*1 + this.wordData.fund.materials*1+this.wordData.fund.process*1+ this.wordData.fund.assist*1+this.wordData.fund.authenticate*1+ this.wordData.fund.match*1+this.wordData.fund.activity*1+this.wordData.fund.affair*1)/10000
|
|
|
}
|
|
|
+ },
|
|
|
+ mounted(){
|
|
|
+ this.getProjectDepartmentData()
|
|
|
}
|
|
|
};
|
|
|
</script>
|
|
|
|
|
|
-<style lang="less">
|
|
|
+<style lang="less" scope>
|
|
|
.textLeft{
|
|
|
.el-textarea__inner{
|
|
|
// padding: 0;
|
|
@@ -580,14 +810,17 @@
|
|
|
border: none;
|
|
|
border-bottom: solid 1px black;
|
|
|
border-left: solid 1px black;
|
|
|
-
|
|
|
height: 50px;
|
|
|
text-align: center;
|
|
|
line-height: 30px;
|
|
|
- width: 110px;
|
|
|
+ // min-width: 60%;
|
|
|
+ width: 14.3%;
|
|
|
p{
|
|
|
font-weight: 600;
|
|
|
}
|
|
|
+ .el-select .el-input .el-select__caret{
|
|
|
+ display: none;
|
|
|
+ }
|
|
|
.el-textarea__inner{
|
|
|
// padding: 0;
|
|
|
border: none ;
|
|
@@ -606,17 +839,43 @@
|
|
|
.twoCol{
|
|
|
column-span: 2;
|
|
|
}
|
|
|
-
|
|
|
+ .operate{
|
|
|
+ right:-85px;
|
|
|
+ width:85px;
|
|
|
+ height: 50px;
|
|
|
+ display:flex;
|
|
|
+ justify-content:space-between;
|
|
|
+ align-items:center;
|
|
|
+ position:absolute;
|
|
|
+ .el-button{
|
|
|
+ max-width:10px;
|
|
|
+ display:flex;
|
|
|
+ justify-content:center;
|
|
|
+ align-items:center;
|
|
|
+ margin-left:10px;
|
|
|
+ }
|
|
|
+ }
|
|
|
|
|
|
+ //在style里面添加此段代码即可
|
|
|
+
|
|
|
+ input::-webkit-outer-spin-button,
|
|
|
+ input::-webkit-inner-spin-button {
|
|
|
+ -webkit-appearance: none;
|
|
|
+ }
|
|
|
+ input[type="number"]{
|
|
|
+ -moz-appearance: textfield;
|
|
|
+ }
|
|
|
|
|
|
#MakerSpaceWord{
|
|
|
width: 100%;
|
|
|
display: flex;
|
|
|
flex-direction: column;
|
|
|
- // align-items: center;
|
|
|
+ align-items: center;
|
|
|
background-color: #ffff;
|
|
|
margin: 0;
|
|
|
- padding: 0;
|
|
|
+ padding:100px;
|
|
|
+ box-sizing:border-box;
|
|
|
+
|
|
|
}
|
|
|
#title{
|
|
|
width: 100%;
|
|
@@ -624,7 +883,7 @@
|
|
|
flex-direction: column;
|
|
|
align-items: center;
|
|
|
position: relative;
|
|
|
- margin-top: 40px;
|
|
|
+ // margin-top: 40px;
|
|
|
.school{
|
|
|
font-size: 2.5em;
|
|
|
font-weight: bold;
|