布局法规月报

This commit is contained in:
qq787203167
2022-06-22 17:59:27 +08:00
parent c9d0a2c8da
commit 52410ccad1
4 changed files with 354 additions and 83 deletions
+8
View File
@@ -978,6 +978,14 @@ module.exports = {
contentTemplate:'Content template',
moveUp:'Move up',
moveDown:'Move down',
vehicleType:'Vehicle Type',
usage:'Usage',
implementationModel:'Implementation model',
primaryCoverageCn:'Primary coverage (Cn)',
primaryCoverageEn:'Primary coverage (En)',
workProgressCn:'NIO Work progress (Cn)',
workProgressEn:'NIO Work progress (En)',
link:'Link',
// 上报库
Enable: 'Enable',
Latestupdatetime: 'Latest update time',
+21 -13
View File
@@ -970,19 +970,27 @@ module.exports = {
chapterContents: '章节目录',
chineseTitle: '中文标题',
englishTitle: '英文标题',
regulatoryContact:'法规联系人',
exportStatus:'导出状态',
monthlyTitleTemplate:'月报标题模板',
monthlyIntegrationAndExport:'月报整合导出',
addContent:'新增内容',
editContent:'编辑内容',
viewContent:'查看内容',
monthSelection:'月份选择',
fillInTheMonth:'填写月份',
contentTemplate:'内容模板',
bringInStandardInformation:'带入标准信息',
moveUp:'上移',
moveDown:'下移',
regulatoryContact: '法规联系人',
exportStatus: '导出状态',
monthlyTitleTemplate: '月报标题模板',
monthlyIntegrationAndExport: '月报整合导出',
addContent: '新增内容',
editContent: '编辑内容',
viewContent: '查看内容',
monthSelection: '月份选择',
fillInTheMonth: '填写月份',
contentTemplate: '内容模板',
bringInStandardInformation: '带入标准信息',
moveUp: '上移',
moveDown: '下移',
vehicleType: '适用车型',
usage: '用法',
implementationModel: '实施车型',
primaryCoverageCn: '主要内容(中文)',
primaryCoverageEn: '主要内容(英文)',
workProgressCn: 'NIO工作进展(中文)',
workProgressEn: 'NIO工作进展(英文)',
link: '链接',
// 上报库
Enable: '启用',
Latestupdatetime: '最新更新时间',
@@ -5,18 +5,96 @@
<div class="box-title-text">
<div class="title-text">
<span class="title-text-text"
:title="$t('fillInTheMonth')">{{$t('fillInTheMonth')}}</span>
:title="$t('title')">{{$t('title')}}</span>
</div>
<a-form-model-item class="itemModel">
<a-month-picker class="box-input"
v-model="formInline.fillInTheMonth"
:placeholder="$t('fillInTheMonth')"/>
<a-input class="box-input"
:disabled="false"
v-model="formInline.title"
:placeholder="$t('PleaseEnter')+$t('title')"/>
</a-form-model-item>
</div>
</a-col>
<a-col :span="12" style="text-align: right">
<div style="text-align: right">
<a-button class="button-text" type="primary">{{$t('bringInStandardInformation')}}</a-button>
<div class="box-title-text">
<div class="title-text">
<span class="title-text-text"
:title="$t('englishTitle')">{{$t('englishTitle')}}</span>
</div>
<a-form-model-item class="itemModel">
<a-input class="box-input"
:disabled="false"
v-model="formInline.englishTitle"
:placeholder="$t('PleaseEnter')+$t('englishTitle')"/>
</a-form-model-item>
</div>
</a-col>
</a-row>
<a-row :gutter="24">
<a-col :span="12">
<div class="box-title-text">
<div class="title-text">
<span class="title-text-text"
:title="$t('technicalField')">{{$t('technicalField')}}</span>
</div>
<a-form-model-item class="itemModel-multi" prop="technologyTerritory">
<a-tree-select
tree-node-filter-prop="title"
v-model="formInline.technologyTerritory"
:maxTagCount="1"
:getPopupContainer="triggerNode=> triggerNode.parentNode"
class="box-input"
style="width: 100%"
:tree-data="CategoryTreeList"
tree-checkable
:placeholder="$t('PleaseSelect')+$t('technicalField')"
/>
</a-form-model-item>
</div>
</a-col>
<a-col :span="12">
<div class="box-title-text">
<div class="title-text">
<span class="title-text-text"
:title="$t('vehicleType')">{{$t('vehicleType')}}</span>
</div>
<a-form-model-item class="itemModel-multi">
<j-multi-select-tag class="box-input" v-model="formInline.vehicleType"
:placeholder="$t('PleaseSelect')+$t('vehicleType')"
:type="'select'"
:triggerChange="false" :dictCode="'car_type'"/>
</a-form-model-item>
</div>
</a-col>
</a-row>
<a-row :gutter="24">
<a-col :span="12">
<div class="box-title-text">
<div class="title-text">
<span class="title-text-text"
:title="$t('scopeOfApplication')">{{$t('scopeOfApplication')}}</span>
</div>
<a-form-model-item class="itemModel-multi">
<j-multi-select-tag class="box-input" v-model="formInline.shi4_yong4_fan4_wei2"
:placeholder="$t('PleaseSelect')+$t('scopeOfApplication')"
:type="'select'"
:triggerChange="false" :dictCode="'apply_scope'"/>
</a-form-model-item>
</div>
</a-col>
<a-col :span="12">
<div class="box-title-text">
<div class="title-text">
<span class="title-text-text"
:title="$t('status')">{{$t('status')}}</span>
</div>
<a-form-model-item class="itemModel">
<j-dict-select-tag class="box-input" v-model="formInline.status"
@input="handleInput('status')"
:placeholder="$t('PleaseSelect')+$t('status')"
:type="'select'"
:triggerChange="false" :dictCode="'state'"/>
</a-form-model-item>
</div>
</a-col>
</a-row>
@@ -25,47 +103,160 @@
<div class="box-title-text">
<div class="title-text">
<span class="title-text-text"
:title="$t('chapterContents')">{{$t('chapterContents')}}</span>
:title="$t('usage')">{{$t('usage')}}</span>
</div>
<a-form-model-item class="itemModel">
<a-select :placeholder="$t('PleaseSelect')+$t('chapterContents')"
:disabled="disabled"
class="box-input"
:getPopupContainer="triggerNode=> triggerNode.parentNode"
allowClear
v-model="formInline.chapterContents">
<a-select-option v-for="(item, key) in chapterContentsList"
:key="key"
:value="item.value">
<span style="display: inline-block;width: 100%" :title=" item.name ">
{{ item.name }}
</span>
</a-select-option>
</a-select>
<j-dict-select-tag class="box-input" v-model="formInline.usage"
@input="handleInput('usage')"
:placeholder="$t('PleaseSelect')+$t('usage')"
:type="'select'"
:triggerChange="false" :dictCode="'usage'"/>
</a-form-model-item>
</div>
</a-col>
<a-col :span="12">
<div class="box-title-text">
<div class="title-text">
<span class="title-text-text"
:title="$t('contentTemplate')">{{$t('contentTemplate')}}</span>
<span class="title-text-text"
:title="$t('implementationModel')">{{$t('implementationModel')}}</span>
</div>
<a-form-model-item class="itemModel">
<a-select :placeholder="$t('PleaseSelect')+$t('contentTemplate')"
:disabled="disabled"
class="box-input"
:getPopupContainer="triggerNode=> triggerNode.parentNode"
allowClear
v-model="formInline.chapterContents">
<a-select-option v-for="(item, key) in contentTemplateList"
:key="key"
:value="item.value">
<span style="display: inline-block;width: 100%" :title=" item.name ">
{{ item.name }}
</span>
</a-select-option>
</a-select>
<a-input class="box-input"
:disabled="disabled"
v-model="formInline.implementationModel"
:placeholder="$t('PleaseEnter')+$t('implementationModel')"/>
</a-form-model-item>
</div>
</a-col>
</a-row>
<a-row :gutter="24">
<a-col :span="12">
<div class="box-title-text">
<div class="title-text">
<span class="title-text-text"
:title="$t('releaseDate')">{{$t('releaseDate')}}</span>
</div>
<a-form-model-item class="itemModel">
<a-input class="box-input"
:disabled="disabled"
v-model="formInline.releaseDate"
:placeholder="$t('PleaseEnter')+$t('releaseDate')"/>
</a-form-model-item>
</div>
</a-col>
<a-col :span="12">
<div class="box-title-text">
<div class="title-text">
<span class="title-text-text"
:title="$t('ImplementationDate')">{{$t('ImplementationDate')}}</span>
</div>
<a-form-model-item class="itemModel">
<a-input class="box-input"
:disabled="disabled"
v-model="formInline.ImplementationDate"
:placeholder="$t('PleaseEnter')+$t('ImplementationDate')"/>
</a-form-model-item>
</div>
</a-col>
</a-row>
<a-row :gutter="24">
<a-col :span="12">
<div class="box-title-text">
<div class="title-text">
<span class="title-text-text"
:title="$t('vehicleInProductionDate')">{{$t('vehicleInProductionDate')}}</span>
</div>
<a-form-model-item class="itemModel">
<a-input class="box-input"
:disabled="disabled"
v-model="formInline.vehicleInProductionDate"
:placeholder="$t('PleaseEnter')+$t('vehicleInProductionDate')"/>
</a-form-model-item>
</div>
</a-col>
</a-row>
<a-row :gutter="24">
<a-col :span="24">
<div class="box-title-text">
<div class="title-text">
<span class="title-text-text" :title="$t('primaryCoverageCn')">{{$t('primaryCoverageCn')}}</span>
</div>
<a-form-model-item class="itemModel">
<a-textarea
:placeholder="$t('PleaseEnter')+$t('primaryCoverageCn')"
v-model.trim="formInline.useExplain" :rows="4"/>
</a-form-model-item>
</div>
</a-col>
</a-row>
<a-row :gutter="24">
<a-col :span="24">
<div class="box-title-text">
<div class="title-text">
<span class="title-text-text" :title="$t('primaryCoverageEn')">{{$t('primaryCoverageEn')}}</span>
</div>
<a-form-model-item class="itemModel">
<a-textarea
:placeholder="$t('PleaseEnter')+$t('primaryCoverageEn')"
v-model.trim="formInline.useExplain" :rows="4"/>
</a-form-model-item>
</div>
</a-col>
</a-row>
<a-row :gutter="24">
<a-col :span="24">
<div class="box-title-text">
<div class="title-text">
<span class="title-text-text" :title="$t('workProgressCn')">{{$t('workProgressCn')}}</span>
</div>
<a-form-model-item class="itemModel">
<a-textarea
:placeholder="$t('PleaseEnter')+$t('workProgressCn')"
v-model.trim="formInline.useExplain" :rows="4"/>
</a-form-model-item>
</div>
</a-col>
</a-row>
<a-row :gutter="24">
<a-col :span="24">
<div class="box-title-text">
<div class="title-text">
<span class="title-text-text" :title="$t('workProgressEn')">{{$t('workProgressEn')}}</span>
</div>
<a-form-model-item class="itemModel">
<a-textarea
:placeholder="$t('PleaseEnter')+$t('workProgressEn')"
v-model.trim="formInline.useExplain" :rows="4"/>
</a-form-model-item>
</div>
</a-col>
</a-row>
<a-row :gutter="24">
<a-col :span="24">
<div class="box-title-text">
<div class="title-text">
<span class="title-text-text" :title="$t('regulatoryContact')">{{$t('regulatoryContact')}}</span>
</div>
<a-form-model-item class="itemModel">
<a-input class="box-input"
:disabled="false"
v-model="formInline.regulatoryContact"
:placeholder="$t('PleaseEnter')+$t('regulatoryContact')"/>
</a-form-model-item>
</div>
</a-col>
</a-row>
<a-row :gutter="24">
<a-col :span="24">
<div class="box-title-text">
<div class="title-text">
<span class="title-text-text" :title="$t('link')">{{$t('link')}}</span>
</div>
<a-form-model-item class="itemModel">
<a-input class="box-input"
:disabled="false"
v-model="formInline.link"
:placeholder="$t('PleaseEnter')+$t('link')"/>
</a-form-model-item>
</div>
</a-col>
@@ -76,46 +267,104 @@
<script>
export default {
name: 'defaultTemplate',
data(){
return{
rules: {
name: [
{
required: true,
message: this.$t('VirtualListName') + this.$t('cannotEmpty'),
trigger: 'blur'
},
{
max: 100,
message: this.$t('VirtualListName') + this.$t('cannotExceed') + 100 + this.$t('Characters'),
trigger: 'blur'
}
],
useExplain: [
{
required: true,
message: this.$t('instructionForUse') + this.$t('cannotEmpty'),
trigger: 'blur'
},
{
max: 500,
message: this.$t('instructionForUse') + this.$t('cannotExceed') + 500 + this.$t('Characters'),
trigger: 'blur'
}
]
},
formInline:{},
}
},
methods:{
data() {
return {
rules: {
name: [
{
required: true,
message: this.$t('VirtualListName') + this.$t('cannotEmpty'),
trigger: 'blur'
},
{
max: 100,
message: this.$t('VirtualListName') + this.$t('cannotExceed') + 100 + this.$t('Characters'),
trigger: 'blur'
}
],
useExplain: [
{
required: true,
message: this.$t('instructionForUse') + this.$t('cannotEmpty'),
trigger: 'blur'
},
{
max: 500,
message: this.$t('instructionForUse') + this.$t('cannotExceed') + 500 + this.$t('Characters'),
trigger: 'blur'
}
]
},
formInline: {},
CategoryTreeList: [],
disabled: false
}
},
mounted() {
},
methods: {
handleInput(value) {
this.$nextTick(() => {
this.formInline = { ...this.formInline }
this.$refs.ruleForm.validateField([value])
})
}
}
}
</script>
<style scoped>
.box-title-text {
line-height: 1.4;
display: flex;
}
.title-text {
width: 114px;
text-align: right;
display: inline-block;
font-weight: 500;
font-size: 14px;
margin-right: 16px;
overflow: hidden;
text-overflow: ellipsis;
white-space: nowrap;
height: 42px;
line-height: 42px;
}
.box-input {
display: inline-block;
height: 38px;
width: 100%;
}
.itemModel {
width: calc(100% - 130px);
display: inline-block;
margin-top: 2px;
}
.title-text-text {
margin-top: 9px;
}
.formAdd {
margin-bottom: 40px;
}
.Required {
color: red;
margin-right: 4px;
}
.title-text-text {
margin-top: 9px;
}
.formAdd {
margin-bottom: 40px;
}
</style>
@@ -81,6 +81,7 @@
</div>
</a-col>
</a-row>
<defaultTemplate/>
</a-form-model>
</a-spin>
<div class="drawer-bootom-button">
@@ -92,8 +93,13 @@
</template>
<script>
import defaultTemplate from './defaultTemplate'
export default {
name: 'fillAdd',
components: {
defaultTemplate
},
data() {
return {
rules: {