| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211 |
- <template>
- <el-dialog
- width="50%"
- title="添加新问题标准"
- class="add_new_problem_dialog"
- @close="closeInnerDialog"
- :visible.sync="innerVisible"
- :close-on-click-modal="false"
- append-to-body>
- <el-form :model="newForm" label-width="140px">
- <el-form-item label="问题序号">
- <el-input v-model="newForm.sn" type="text" autocomplete="off"></el-input>
- </el-form-item>
- <el-form-item label="存在问题">
- <el-input v-model="newForm.pblmsDesc" type="textarea" rows="5" autocomplete="off"></el-input>
- </el-form-item>
- <el-form-item label="法规条款">
- <el-input v-model="newForm.relativeLaw" type="textarea" rows="5" autocomplete="off"></el-input>
- </el-form-item>
- <el-form-item label="法规内容">
- <el-input v-model="newForm.lawContent" type="textarea" rows="5" autocomplete="off"></el-input>
- </el-form-item>
- <el-form-item label="备注">
- <el-input v-model="newForm.note" type="textarea" rows="3" autocomplete="off"></el-input>
- </el-form-item>
- <el-form-item label="问题严重性">
- <div>
- <el-checkbox v-model="newForm.cate0" true-label="1" false-label="0">一般</el-checkbox>
- <span class="add_desc" @click="appearDes0cInput = !appearDes0cInput">添加描述</span>
- <div class="demo-input-suffix" v-if="appearDes0cInput">
- 描述信息:<el-input v-model="newForm.cate0Desc" autocomplete="off"></el-input>
- </div>
- </div>
- <div>
- <el-checkbox v-model="newForm.cate1" true-label="1" false-label="0">较重</el-checkbox>
- <span class="add_desc" @click="appearDes1cInput = !appearDes1cInput">添加描述</span>
- <div class="demo-input-suffix" v-if="appearDes1cInput">
- 描述信息:<el-input v-model="newForm.cate1Desc" autocomplete="off"></el-input>
- </div>
- </div>
- <div>
- <el-checkbox v-model="newForm.cate2" true-label="1" false-label="0">严重</el-checkbox>
- <span class="add_desc" @click="appearDes2cInput = !appearDes2cInput">添加描述</span>
- <div class="demo-input-suffix" v-if="appearDes2cInput">
- 描述信息:<el-input v-model="newForm.cate2Desc" autocomplete="off"></el-input>
- </div>
- </div>
- </el-form-item>
- <el-form-item label="单位性质">
- <el-select multiple v-model="newForm.subjectIds" popper-class="nature_select" filterable @change="natureChange" placeholder="请选择">
- <p slot="empty" class="no_data_tips">
- <span>无匹配数据</span>
- <span class="add_new_problem" @click="addNewNature">添加单位性质</span>
- </p>
- <el-option
- v-for="item in natureList"
- :key="item.id"
- :label="item.subName"
- :value="item.id">
- </el-option>
- </el-select>
- </el-form-item>
- </el-form>
- <add-new-nature-com v-if="innerNatureVisible" @closeNatureDialog="closeNatureDialog"></add-new-nature-com>
- <div slot="footer" class="dialog-footer">
- <el-button @click="closeInnerDialog">取 消</el-button>
- <el-button type="primary" @click="submitNewProblem">保 存</el-button>
- </div>
- </el-dialog>
- </template>
- <script>
- import {getNatureListApi,submitNewProblemApi} from '@api/InspectionReport.js'
- import addNewNatureCom from './addNewNatureCom.vue'
- export default {
- props:['listType'],
- data(){
- return {
- newForm: {
- sn: '',
- pblmsDesc: '',
- relativeLaw: '',
- lawContent: '',
- note: '',
- cate0: '',
- cate1: '',
- cate2: '',
- cate0Desc: '',
- cate1Desc: '',
- cate2Desc: '',
- subjectIds: '',
- spfsnlType: '',
- pblmType: ''
- },
- seriousLevelList:[
- {desc: '一般',cate: '0'},
- {desc: '较重',cate: '1'},
- {desc: '严重',cate: '2'}
- ],
- natureList: [],
- innerVisible: true,
- appearDes0cInput: false,
- appearDes1cInput: false,
- appearDes2cInput: false,
- innerNatureVisible: false
- }
- },
- components:{
- addNewNatureCom
- },
- mounted(){
- this.getNatureList()
- },
- methods:{
- getNatureList(){
- let _this = this
- getNatureListApi({}).then(res=>{
- if(res.success){
- let natureListFilter = []
- this.natureList = []
- natureListFilter = res.data
- natureListFilter.forEach(ele=>{
- if(ele.note.indexOf(_this.listType) > -1){
- _this.natureList.push(ele)
- }
- })
- }else{
- this.$message.error(res.message)
- }
- }).catch(err=>{
- this.$message.error(err)
- })
- },
- cateChange(){
-
- },
- natureChange(){
-
- },
- submitNewProblem(){
- this.newForm.pblmType = this.listType
- if(this.listType == '6'){
- this.newForm.spfsnlType = '安全管理'
- }else if(this.listType == '5'){
- this.newForm.spfsnlType = '工程质量管理-工程实体质量'
- }else if(this.listType == '4'){
- this.newForm.spfsnlType = '资金使用与管理'
- }else if(this.listType == '3'){
- this.newForm.spfsnlType = '计划下达与执行'
- }else if(this.listType == '2'){
- this.newForm.spfsnlType = '建设管理'
- }else if(this.listType == '1'){
- this.newForm.spfsnlType = '前期与设计'
- }
- this.newForm.subjectIds = this.newForm.subjectIds.join(',')
- submitNewProblemApi(this.newForm).then(res=>{
- if(res.success){
- this.$message.success('添加成功')
- this.closeInnerDialog()
- }else{
- this.$message.error(res.message)
- }
- }).catch(err=>{
- this.$message.error(err)
- })
- },
- closeInnerDialog(){
- this.$emit('closeInnerDialog')
- },
- addNewNature(){
- this.innerNatureVisible = true
- },
- closeNatureDialog(){
- this.innerNatureVisible = false
- this.getNatureList()
- }
- },
- watch:{
- cateObjList(val){
- console.log(val)
- }
- }
- }
- </script>
- <style lang="scss">
- .add_new_problem_dialog{
- .el-dialog__body{
- font-size: 16px;
- color: #333;
- }
- .add_desc{
- font-size: 12px;
- color: #0078d7;
- cursor: pointer;
- }
- }
- .nature_select .no_data_tips{
- display: flex;
- justify-content: space-between;
- line-height: 30px;
- font-size: 14px;
- color: #666;
- padding: 5px;
- .add_new_problem{
- color: #009fff;
- cursor: pointer;
- }
- }
- </style>
|