| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244 |
- <template>
- <basicDetails
- ref="details"
- :titleText="mainData.projectname"
- formPath="projectChange"
- :editData="mainData"
- :mainAreaData="mainAreaData"
- :turnPageId="20221020143502"
- idname="sa_projectid"
- tags=""
- :tabs="['详细信息','阶段任务','产品配置单','报价单','竞争对手']"
- @pageChange="pageChange"
- @onEditSuccess="queryMainData($route.query.id)">
- <!-- 使用此插槽可不传[tags] -->
- <tagPanl slot="tags" :data="tagObj" ownertable="sa_project" :id="mainData.sa_projectid" @onSuccess="queryMainData"/>
- <div slot="customOperation">
- <!-- 此区域提供了自定义操作按钮 -->
- </div>
- <div slot="slot0" class="container normal-panel">
- <BaseInfo v-if="detailInfo" :detailInfo="detailInfo"/>
- </div>
- <div slot="slot1" class="container normal-panel">
- <StageTask v-if="mainData" :rowData="mainData"/>
- </div>
- <div slot="slot2" class="container normal-panel">
- <ProjectSet />
- </div>
- <div slot="slot3" class="container normal-panel">
- <quotation />
- </div>
- <div slot="slot4" class="container normal-panel">
- <Rival />
- </div>
- </basicDetails>
- </template>
- <script>
- import Quotation from './modules/quotation/index'
- import ProjectSet from './modules/projectSet/index'
- import Rival from './modules/rival/index'
- import BaseInfo from './modules/baseInfo/baseInfo'
- import StageTask from './modules/stageTask/index'
- export default {
- components:{Quotation,ProjectSet,Rival,BaseInfo,StageTask},
- data () {
- return {
- mainData:'',
- mainAreaData:'',
- /* 企业列表 */
- enterpriseList:'',
- /* 企业列表 */
- projectType:'',
- projectLead:'',
- projectPanl:'',
- projectAddress:'',
- detailInfo:'',
- tagObj:''
- }
- },
- provide () {
- return {
- enterpriseList:() => this.enterpriseList,
- projectType:() => this.projectType,
- projectLead:() => this.projectLead,
- projectPanl:() => this.projectPanl,
- detailData:() => this.mainData
- }
- },
- methods:{
- async queryMainData (id) {
- const res = await this.$api.requested({
- "id": "20221021103902",
- "version":1,
- "content": {
- "sa_projectid":this.$route.query.id
- }
- })
- this.mainData = res.data
- console.log(this.mainData);
- /* 获取标签数据 */
- this.tagObj = await this.$store.dispatch('queryTagList',{table:'sa_project',id:this.mainData.sa_projectid})
- this.getProjectAddres()
- },
- // 监听切换数据,上一页,下一页
- pageChange (id,rowindex) {
- this.$router.replace({path:'/projectChangeDetail',query:{id:id,rowindex:rowindex}})
- this.queryMainData(id)
- },
- /* 获取联系人:负责人列表 */
- async getAccount () {
- let res = await this.$api.requested({
- "id": "20221018150602",
- "content": {
- "sys_enterpriseid": 1,
- "pageNumber": 1,
- "pageSize": 20,
- "where": {
- "condition": ""
- }
- }
- })
- },
- async getSysetms () {
- /* 获取项目类型 */
- let res = await this.$store.dispatch('optiontypeselect','projecttype')
- this.projectType = res.data
- },
- /** 获取公司数据 */
- async getEnterprise () {
- let res = await this.$api.requested({
- "id": 20221021095802,
- "content": {
- "pageNumber": 1,
- "pageSize": 99999,
- "where": {
- "condition": ""
- }
- },
- })
- this.enterpriseList = res.data
- },
- /* 获取项目模板 */
- async getProjectPanl () {
- let res = await this.$api.requested({
- "id": "20221019085604",
- "content": {
- "pageNumber": 1,
- "pageSize": 99999999,
- "where":{
- "condition":""
- }
- }
- })
- this.projectPanl = res.data
- },
- /* 获取项目地址 */
- async getProjectAddres () {
- let res = await this.$api.requested({
- "id": "20221018153302",
- "content": {
- "sys_enterpriseid": this.mainData.sys_enterpriseid,
- "pageNumber": 1,
- "pageSize": 999999,
- "where": {
- "condition": ""
- }
- }
- })
- this.projectAddress = res.data
- /* 获取项目等级 */
- let res2 = await this.$store.dispatch('optiontypeselect','projectgrade')
- this.projectLead = res2.data
- this.changeDataStructure()
- console.log(res);
- },
- changeDataStructure () {
- this.detailInfo = {
- baseInfo: [
- {label:'项目编号',value:this.mainData.projectnum ? this.mainData.projectnum : '--'},
- {label:'项目名称',value:this.mainData.projectname ? this.mainData.projectname : '--'},
- {label:'项目地址',value:this.projectAddress.find(item => item.contactsid == this.mainData.sa_project_addressid).address},
- {label:'项目等级',value:this.projectLead.find(item => item.rowindex == this.mainData.grade).value},
- {label:'项目类型',value:this.mainData.projecttype ? this.mainData.projecttype : '--'},
- {label:'当前项目阶段',value:this.mainData.stagename ? this.mainData.stagename : '--'},
- {label:'项目报备时间',value:''},
- {label:'项目联系人',value:this.mainData.contact ? this.mainData.contact : '--'},
- {label:'联系人手机号',value:this.mainData.phonenumber ? this.mainData.phonenumber : '--'},
- {label:'项目规模',value:this.mainData.scale ? this.mainData.scale : '--'},
- {label:'项目状态',value:this.mainData.status ? this.mainData.status : '--'},
- {label:'项目折扣',value:this.mainData.discountrate ? this.mainData.discountrate : '--'},
- {label:'项目预算',value:this.mainData.budgetary ? this.mainData.budgetary : '--'},
- {label:'预计签约金额',value:this.mainData.signamount_due ? this.mainData.signamount_due : '--'},
- {label:'预计签约月份',value:this.mainData.signdate_due ? this.mainData.signdate_due : '--'},
- {label:'赢率',value:this.mainData.winrate ? this.mainData.winrate : '--'},
- {label:'负责人',value:this.mainData.name ? this.mainData.name : '--'},
- ],
- systemInfo: [
- {label:'创建人',value:this.mainData.createby ? this.mainData.createby : '--'},
- {label:'创建时间',value:this.mainData.createdate ? this.mainData.createdate : '--'},
- {label:'最近跟进人',value:this.mainData.followby ? this.mainData.followby : '--'},
- {label:'最近跟进时间',value:this.mainData.followdate ? this.mainData.followdate : '--'},
- {label:'锁定状态',value:this.mainData.locked == '0' ? '锁定' : '解锁'},
- {label:'最近编辑人',value:this.mainData.changeby ? this.mainData.changeby : '--'},
- {label:'最近编辑时间',value:this.mainData.changedate ? this.mainData.changedate : '--'},
- {label:'转手次数',value:this.mainData.changecount !== '' ? this.mainData.changecount : '--'},
-
- ]
- }
- this.mainAreaData = [
- {
- label:'项目名称',
- value: this.mainData.projectname
- },
- {
- label:'项目编号',
- value:this.mainData.projectnum
- },
- {
- label:'项目规模',
- value: this.mainData.scale
- },
- {
- label:'项目等级',
- value: this.projectLead.find(item => item.rowindex == this.mainData.grade).value
- },
- {
- label:'项目类型',
- value:this.mainData.projecttype
- },
- {
- label:'项目阶段',
- value: this.mainData.stagename
- },
- {
- label:'项目状态',
- value: this.mainData.status
- },
- {
- label:'项目状态',
- value: this.mainData.enterprisename
- },
- {
- label:'负责人',
- value: this.mainData.name
- },
- ]
- }
- },
- mounted () {
- },
- async created () {
- this.queryMainData(this.$route.query.id)
- this.getProjectPanl()
- this.getEnterprise()
- this.getSysetms()
- // 验证权限
- this.tool.checkAuth(this.$route.name,'update')?'':this.$router.go(-1)
- },
- }
- </script>
- <style>
- </style>
|