|
@@ -31,14 +31,33 @@
|
|
<mySelectTree style="width:100%" v-model="ruleForm.departmentId" :options="departmentList"></mySelectTree>
|
|
<mySelectTree style="width:100%" v-model="ruleForm.departmentId" :options="departmentList"></mySelectTree>
|
|
</el-form-item>
|
|
</el-form-item>
|
|
<el-form-item label="负责人" prop="person">
|
|
<el-form-item label="负责人" prop="person">
|
|
- <el-select style="width:100%" v-model="ruleForm.personnelId" filterable remote clearable placeholder="请选择"
|
|
|
|
|
|
+ <el-select style="width:100%" v-model="ruleForm.headId" filterable remote clearable placeholder="请选择"
|
|
:loading="loading" v-SelectLazyLoading="lazyLoading" :remote-method="remoteMethod">
|
|
:loading="loading" v-SelectLazyLoading="lazyLoading" :remote-method="remoteMethod">
|
|
<el-option v-for="item in personnelList" :key="item.id" :label="item.name" :value="item.id">
|
|
<el-option v-for="item in personnelList" :key="item.id" :label="item.name" :value="item.id">
|
|
</el-option>
|
|
</el-option>
|
|
</el-select>
|
|
</el-select>
|
|
</el-form-item>
|
|
</el-form-item>
|
|
|
|
+ <el-form-item label="事件" prop="event">
|
|
|
|
+ <div v-if="showEvent" style="display:flex">
|
|
|
|
+ <span>
|
|
|
|
+ <el-tag
|
|
|
|
+ v-for="tag in ruleForm.eventList"
|
|
|
|
+ :key="tag.value"
|
|
|
|
+ closable
|
|
|
|
+ type='info'
|
|
|
|
+ >
|
|
|
|
+ {{tag.eventName}} - {{ tag.scenario }}
|
|
|
|
+ </el-tag>
|
|
|
|
+ </span>
|
|
|
|
+ <span style="margin-left:10px">
|
|
|
|
+ <my-cascader :options="eventList" @change="change">
|
|
|
|
+ <i slot="reference" class="el-icon-circle-plus-outline" style="font-size:20px;"></i>
|
|
|
|
+ </my-cascader>
|
|
|
|
+ </span>
|
|
|
|
+ </div>
|
|
|
|
+ </el-form-item>
|
|
<el-form-item label="应用场景" prop="scenarioList">
|
|
<el-form-item label="应用场景" prop="scenarioList">
|
|
- <el-checkbox-group v-model="ruleForm.scenarioList" @change="onChange">
|
|
|
|
|
|
+ <el-checkbox-group v-model="ruleForm.scenarios" @change="onChange">
|
|
<el-checkbox v-for="item in commonData.ENTERPRISE_APPLICATION_SCENARIO" :key="item.value"
|
|
<el-checkbox v-for="item in commonData.ENTERPRISE_APPLICATION_SCENARIO" :key="item.value"
|
|
:label="parseInt(item.value)">{{ item.label }}</el-checkbox>
|
|
:label="parseInt(item.value)">{{ item.label }}</el-checkbox>
|
|
</el-checkbox-group>
|
|
</el-checkbox-group>
|
|
@@ -62,16 +81,31 @@
|
|
</div>
|
|
</div>
|
|
</el-checkbox-group>
|
|
</el-checkbox-group>
|
|
</el-form-item>
|
|
</el-form-item>
|
|
- <el-form-item label="产品类别/产品" prop="productId" v-if="$permission('/workspace/product')">
|
|
|
|
|
|
+ <template>
|
|
<div>
|
|
<div>
|
|
- <mySelectButton size='large' style="width:100%">
|
|
|
|
- <div slot="select" style="width:100%">
|
|
|
|
- <mySelectTree style="width:100%" v-model="ruleForm.departmentId" :options="departmentList">
|
|
|
|
- </mySelectTree>
|
|
|
|
|
|
+ <el-form-item label="产品类别/产品" prop="productId" v-if="$permission('/workspace/product')">
|
|
|
|
+ <div>
|
|
|
|
+ <!-- <mySelectButton size='large' style="width:100%">
|
|
|
|
+ <div slot="select" style="width:100%">
|
|
|
|
+ <mySelectTree style="width:100%" v-model="ruleForm.departmentId" :options="departmentList">
|
|
|
|
+ </mySelectTree>
|
|
|
|
+ </div>
|
|
|
|
+ </mySelectButton> -->
|
|
|
|
+ <div v-if="ruleForm.products">
|
|
|
|
+ {{ ruleForm.products.name }}
|
|
|
|
+ <span style="color:blue">
|
|
|
|
+ ({{ ruleForm.products.treeType==2?'产品':'产品类别' }})
|
|
|
|
+ </span>
|
|
|
|
+ <span><i class="el-icon-error cursor_pointer" @click="delProduct"></i></span>
|
|
|
|
+ </div>
|
|
|
|
+ <el-button size="small" v-else @click="choseProduct">+ 选择</el-button>
|
|
</div>
|
|
</div>
|
|
- </mySelectButton>
|
|
|
|
|
|
+ </el-form-item>
|
|
|
|
+ <el-form-item label="分类架构" prop="structureId" v-if="ruleForm.products && ruleForm.products.fieldId && $permission('/workspace/product')">
|
|
|
|
+ <my-select-Tree style="width:100%" :options="structureList" @getValue="getStructureId" :props="StructureProp" :value="ruleForm.structureId"></my-select-Tree>
|
|
|
|
+ </el-form-item>
|
|
</div>
|
|
</div>
|
|
- </el-form-item>
|
|
|
|
|
|
+ </template>
|
|
<el-row :gutter="24">
|
|
<el-row :gutter="24">
|
|
<el-col :span="12">
|
|
<el-col :span="12">
|
|
<el-form-item label="合同号" prop="contractNo">
|
|
<el-form-item label="合同号" prop="contractNo">
|
|
@@ -79,15 +113,15 @@
|
|
</el-form-item>
|
|
</el-form-item>
|
|
</el-col>
|
|
</el-col>
|
|
<el-col :span="12">
|
|
<el-col :span="12">
|
|
- <el-form-item label="内部案卷" prop="innerFile">
|
|
|
|
- <el-input v-model="ruleForm.innerFile" placeholder="请输入内部案卷"></el-input>
|
|
|
|
|
|
+ <el-form-item label="内部案卷" prop="volumeNumber">
|
|
|
|
+ <el-input v-model="ruleForm.volumeNumber" placeholder="请输入内部案卷"></el-input>
|
|
</el-form-item>
|
|
</el-form-item>
|
|
</el-col>
|
|
</el-col>
|
|
</el-row>
|
|
</el-row>
|
|
<el-row :gutter="24">
|
|
<el-row :gutter="24">
|
|
<el-col :span="12">
|
|
<el-col :span="12">
|
|
- <el-form-item label="委案日" prop="caseDate">
|
|
|
|
- <el-date-picker v-model="ruleForm.caseDate" value-format="yyyy-MM-dd" type="date" placeholder="请选择委案日"
|
|
|
|
|
|
+ <el-form-item label="委案日" prop="commissionCaseDay">
|
|
|
|
+ <el-date-picker v-model="ruleForm.commissionCaseDay" value-format="yyyy-MM-dd" type="date" placeholder="请选择委案日"
|
|
class="width_100"></el-date-picker>
|
|
class="width_100"></el-date-picker>
|
|
</el-form-item>
|
|
</el-form-item>
|
|
</el-col>
|
|
</el-col>
|
|
@@ -100,8 +134,8 @@
|
|
</el-form-item>
|
|
</el-form-item>
|
|
</el-col>
|
|
</el-col>
|
|
</el-row>
|
|
</el-row>
|
|
- <el-form-item label="备注" prop="remark">
|
|
|
|
- <el-input v-model="ruleForm.remark" placeholder="请输入备注" type="textarea"></el-input>
|
|
|
|
|
|
+ <el-form-item label="备注" prop="description">
|
|
|
|
+ <el-input v-model="ruleForm.description" placeholder="请输入备注" type="textarea"></el-input>
|
|
</el-form-item>
|
|
</el-form-item>
|
|
</el-form>
|
|
</el-form>
|
|
</el-main>
|
|
</el-main>
|
|
@@ -117,15 +151,24 @@
|
|
top="10vh">
|
|
top="10vh">
|
|
<ClientTable :choseClient="true" @getClient="getClient"></ClientTable>
|
|
<ClientTable :choseClient="true" @getClient="getClient"></ClientTable>
|
|
</el-dialog>
|
|
</el-dialog>
|
|
|
|
+
|
|
|
|
+ <el-dialog title="选择产品或产品类别" :visible.sync="productVisible" width="1000px" append-to-body destroy-on-close :before-close="closeProduct">
|
|
|
|
+ <div style="height:550px">
|
|
|
|
+ <product :isChoose="true" @chooseItem="chooseItem"></product>
|
|
|
|
+ </div>
|
|
|
|
+ </el-dialog>
|
|
</div>
|
|
</div>
|
|
</template>
|
|
</template>
|
|
|
|
|
|
<script>
|
|
<script>
|
|
import ClientTable from '@/views/client'
|
|
import ClientTable from '@/views/client'
|
|
import { mapGetters } from 'vuex';
|
|
import { mapGetters } from 'vuex';
|
|
|
|
+
|
|
|
|
+import product from '@/views/product/components/index.vue'
|
|
export default {
|
|
export default {
|
|
components: {
|
|
components: {
|
|
- ClientTable
|
|
|
|
|
|
+ ClientTable,
|
|
|
|
+ product
|
|
},
|
|
},
|
|
props: {
|
|
props: {
|
|
commonData: Object
|
|
commonData: Object
|
|
@@ -164,6 +207,27 @@ export default {
|
|
type: 'ENTERPRISE_APPLICATION_SCENARIO',
|
|
type: 'ENTERPRISE_APPLICATION_SCENARIO',
|
|
flag: 1
|
|
flag: 1
|
|
},
|
|
},
|
|
|
|
+ //事件列表
|
|
|
|
+ eventList:[
|
|
|
|
+ {
|
|
|
|
+ label:'事件1',
|
|
|
|
+ value:'1',
|
|
|
|
+ children:[
|
|
|
|
+ {
|
|
|
|
+ label:'1-1',
|
|
|
|
+ value:'3'
|
|
|
|
+ }
|
|
|
|
+ ]
|
|
|
|
+ },
|
|
|
|
+ {
|
|
|
|
+ label:'事件2',
|
|
|
|
+ value:'2'
|
|
|
|
+ },
|
|
|
|
+ ],
|
|
|
|
+ showEvent:true,
|
|
|
|
+ //选择产品或产品类别
|
|
|
|
+ productVisible:false,
|
|
|
|
+
|
|
};
|
|
};
|
|
},
|
|
},
|
|
watch: {},
|
|
watch: {},
|
|
@@ -174,13 +238,79 @@ export default {
|
|
mounted() {
|
|
mounted() {
|
|
},
|
|
},
|
|
methods: {
|
|
methods: {
|
|
|
|
+ //获取架构id
|
|
|
|
+ getStructureId(val){
|
|
|
|
+
|
|
|
|
+ },
|
|
|
|
+ //获取选中的值
|
|
|
|
+ chooseItem({row,type}){
|
|
|
|
+ this.ruleForm.products = {
|
|
|
|
+ treeType:type,
|
|
|
|
+ fieldId:row.id,
|
|
|
|
+ name:row.name,
|
|
|
|
+ valueIds:[]
|
|
|
|
+ }
|
|
|
|
+ this.closeProduct()
|
|
|
|
+ },
|
|
|
|
+ //删除选择的产品或产品类别
|
|
|
|
+ delProduct(){
|
|
|
|
+ this.ruleForm.products = null
|
|
|
|
+ this.$forceUpdate()
|
|
|
|
+ // this.ruleForm.products=null
|
|
|
|
+ },
|
|
|
|
+ //打开选择产品或产品类别弹窗
|
|
|
|
+ choseProduct(){
|
|
|
|
+ this.productVisible = true
|
|
|
|
+
|
|
|
|
+ },
|
|
|
|
+ //关闭弹窗
|
|
|
|
+ closeProduct(){
|
|
|
|
+ this.productVisible = false
|
|
|
|
+ },
|
|
|
|
+ //选择事件
|
|
|
|
+ change(value){
|
|
|
|
+ if(this.ruleForm.eventList){
|
|
|
|
+
|
|
|
|
+ }else{
|
|
|
|
+ this.ruleForm.eventList = []
|
|
|
|
+ }
|
|
|
|
+ var index = this.ruleForm.eventList.findIndex(item=>{
|
|
|
|
+ return item.eventId == value[0] && item.scenarioId == value[1]
|
|
|
|
+ })
|
|
|
|
+ if(index != -1){
|
|
|
|
+ this.$message.warning('该调查类型已存在')
|
|
|
|
+ this.showEvent = false
|
|
|
|
+ this.$nextTick(()=>{
|
|
|
|
+ this.showEvent = true
|
|
|
|
+ })
|
|
|
|
+ return false
|
|
|
|
+ }
|
|
|
|
+ var obj = {}
|
|
|
|
+ var arr = this.eventList.find(item=>{
|
|
|
|
+ return item.value == value[0]
|
|
|
|
+ })
|
|
|
|
+ obj.eventName = arr.label
|
|
|
|
+ obj.eventId = arr.value
|
|
|
|
+ if(value.length>1){
|
|
|
|
+ var arr2 = arr.children.find(item=>{
|
|
|
|
+ return item.value == value[1]
|
|
|
|
+ })
|
|
|
|
+ obj.scenario = arr2.label
|
|
|
|
+ obj.scenarioId = arr2.value
|
|
|
|
+ }
|
|
|
|
+ this.ruleForm.eventList.push(obj)
|
|
|
|
+ this.showEvent = false
|
|
|
|
+ this.$nextTick(()=>{
|
|
|
|
+ this.showEvent = true
|
|
|
|
+ })
|
|
|
|
+ },
|
|
//打开弹窗
|
|
//打开弹窗
|
|
open(form, title) {
|
|
open(form, title) {
|
|
//获取部门列表
|
|
//获取部门列表
|
|
this.getDepartment()
|
|
this.getDepartment()
|
|
//获取人员列表
|
|
//获取人员列表
|
|
this.getPersonnelList()
|
|
this.getPersonnelList()
|
|
- this.ruleForm = form
|
|
|
|
|
|
+ this.ruleForm = JSON.parse(JSON.stringify(form))
|
|
this.title = title
|
|
this.title = title
|
|
this.drawer = true
|
|
this.drawer = true
|
|
},
|
|
},
|
|
@@ -220,11 +350,11 @@ export default {
|
|
},
|
|
},
|
|
//输入框输入事件(委托方)
|
|
//输入框输入事件(委托方)
|
|
input() {
|
|
input() {
|
|
- this.$set(this.ruleForm, 'clientId', -1)
|
|
|
|
|
|
+ this.$set(this.ruleForm, 'entrustId', -1)
|
|
},
|
|
},
|
|
//切换选择委托方
|
|
//切换选择委托方
|
|
handleChange(row) {
|
|
handleChange(row) {
|
|
- this.$set(this.ruleForm, 'clientId', row.id)
|
|
|
|
|
|
+ this.$set(this.ruleForm, 'entrustId', row.id)
|
|
this.$set(this.ruleForm, 'clientName', row.name)
|
|
this.$set(this.ruleForm, 'clientName', row.name)
|
|
this.close2()
|
|
this.close2()
|
|
},
|
|
},
|
|
@@ -234,7 +364,7 @@ export default {
|
|
},
|
|
},
|
|
//获取委托方信息
|
|
//获取委托方信息
|
|
getClient(row) {
|
|
getClient(row) {
|
|
- this.$set(this.ruleForm, 'clientId', row.id)
|
|
|
|
|
|
+ this.$set(this.ruleForm, 'entrustId', row.id)
|
|
this.$set(this.ruleForm, 'clientName', row.name)
|
|
this.$set(this.ruleForm, 'clientName', row.name)
|
|
this.close2()
|
|
this.close2()
|
|
},
|
|
},
|