|
@@ -0,0 +1,246 @@
|
|
|
|
+<template>
|
|
|
|
+ <div class="app-container">
|
|
|
|
+ <div class="title-container">
|
|
|
|
+ <breadcrumb id="breadcrumb-container" class="breadcrumb-container" />
|
|
|
|
+ </div>
|
|
|
|
+ <el-collapse v-model="activeNames" style="margin-top: 30px;">
|
|
|
|
+ <el-collapse-item name="board">
|
|
|
|
+ <template slot="title">
|
|
|
|
+ <span style="font-size:15px; margin-left:15px;letter-spacing:2px; color:RGB(168,168,168)">
|
|
|
|
+ 点击展开查看实时流程图
|
|
|
|
+ </span>
|
|
|
|
+ </template>
|
|
|
|
+ <WorkflowBoard ref='board' :nodeBusinessInfo="nodeBusinessInfo" />
|
|
|
|
+ </el-collapse-item>
|
|
|
|
+ </el-collapse>
|
|
|
|
+ <div class="button-area">
|
|
|
|
+ <el-button v-if="nodeBusinessInfo.currentNodePermission.commit && doWorkflow" class="y-save" type="success" round
|
|
|
|
+ @click="commit('PASS')">提交</el-button>
|
|
|
|
+ <el-button v-if="nodeBusinessInfo.currentNodePermission.reversible && doWorkflow" class="y-save" type="warning"
|
|
|
|
+ round @click="commit('REVERSE')">退回</el-button>
|
|
|
|
+ <el-button v-if="nodeBusinessInfo.currentNodePermission.skippable && doWorkflow" class="y-save" type="warning" round
|
|
|
|
+ @click="commit('SKIP')">跳过</el-button>
|
|
|
|
+ <el-button v-if="nodeBusinessInfo.currentNodePermission.terminable && doWorkflow" class="y-save" type="danger" round
|
|
|
|
+ @click="commit('TERMINATE')">终止</el-button>
|
|
|
|
+ <el-button v-if="nodeBusinessInfo.currentNodePermission.restartable && doWorkflow" class="y-save" type="danger"
|
|
|
|
+ round @click="commit('RESTART')">重置</el-button>
|
|
|
|
+ <el-button class="y-save" round type="info" @click="goBack">返回</el-button>
|
|
|
|
+ </div>
|
|
|
|
+ <el-card>
|
|
|
|
+ <el-divider content-position="left">
|
|
|
|
+ <span style="color:red;font-weight: bold;">
|
|
|
|
+ 【市场人员】
|
|
|
|
+ </span>大中型业务提成申报详情</el-divider>
|
|
|
|
+ <el-form :model="declareForm" ref="declareForm">
|
|
|
|
+ <el-row>
|
|
|
|
+ <el-col :xs="24" :sm="12" :lg="24" :span="6">
|
|
|
|
+ <el-form-item label="项目名称:" prop="name" label-width="140px" class="postInfo-container-item">
|
|
|
|
+ <el-input :value="declareForm.name" :step="1" :max="100" style="width: 100%;" readonly disabled></el-input>
|
|
|
|
+ </el-form-item>
|
|
|
|
+ </el-col>
|
|
|
|
+ </el-row>
|
|
|
|
+ <el-row>
|
|
|
|
+ <el-col :xs="24" :sm="12" :lg="12" :span="6">
|
|
|
|
+ <el-form-item label="订单号:" prop="orderId" label-width="140px" class="postInfo-container-item">
|
|
|
|
+ <el-input :value="declareForm.orderId" :step="1" :max="100" style="width: 100%;" readonly
|
|
|
|
+ disabled></el-input>
|
|
|
|
+ </el-form-item>
|
|
|
|
+ </el-col>
|
|
|
|
+ <el-col :xs="24" :sm="12" :lg="12" :span="6">
|
|
|
|
+ <el-form-item label="报告号:" prop="reportNo" label-width="140px" class="postInfo-container-item">
|
|
|
|
+ <el-input :value="declareForm.reportNo" :step="1" :max="100" style="width: 100%;" readonly
|
|
|
|
+ disabled></el-input>
|
|
|
|
+ </el-form-item>
|
|
|
|
+ </el-col>
|
|
|
|
+ </el-row>
|
|
|
|
+ <el-row>
|
|
|
|
+ <el-col :xs="24" :sm="12" :lg="12" :span="6">
|
|
|
|
+ <el-form-item label="业务分类:" prop="businessCate" label-width="140px" class="postInfo-container-item">
|
|
|
|
+ <el-input :value="declareForm.businessCate" :step="1" :max="100" style="width: 100%;" readonly
|
|
|
|
+ disabled></el-input>
|
|
|
|
+ </el-form-item>
|
|
|
|
+ </el-col>
|
|
|
|
+ <el-col :xs="24" :sm="12" :lg="12" :span="6">
|
|
|
|
+ <el-form-item label="产品类型:" prop="production" label-width="140px" class="postInfo-container-item">
|
|
|
|
+ <el-input :value="prod" :step="1" :max="100" style="width: 100%;" readonly
|
|
|
|
+ disabled></el-input>
|
|
|
|
+ </el-form-item>
|
|
|
|
+ </el-col>
|
|
|
|
+ </el-row>
|
|
|
|
+ <el-row>
|
|
|
|
+ <el-col :xs="24" :sm="12" :lg="12" :span="6">
|
|
|
|
+ <el-form-item label="申报人:" prop="declareUser" label-width="140px" class="postInfo-container-item">
|
|
|
|
+ <el-input :value="declareForm.declareUser" style="width: 100%;" readonly disabled>
|
|
|
|
+ </el-input>
|
|
|
|
+ </el-form-item>
|
|
|
|
+ </el-col>
|
|
|
|
+ <el-col :xs="24" :sm="12" :lg="12" :span="6">
|
|
|
|
+ <el-form-item label="申报日期:" prop="created" label-width="140px" class="postInfo-container-item">
|
|
|
|
+ <el-input :value="declareForm.created" :step="1" :max="100" style="width: 100%;" readonly
|
|
|
|
+ disabled></el-input>
|
|
|
|
+ </el-form-item>
|
|
|
|
+ </el-col>
|
|
|
|
+ </el-row>
|
|
|
|
+ <el-table :data="declareForm.userShareRates" border style="width: 100%; margin-top: 10px; margin-bottom: 10px;">
|
|
|
|
+ <el-table-column prop="userId" label="客户经理" align="center">
|
|
|
|
+ <template slot-scope="{row}">
|
|
|
|
+ <span>{{ row.name }}</span>
|
|
|
|
+ </template>
|
|
|
|
+ </el-table-column>
|
|
|
|
+ <el-table-column prop="rate" label="提成比例" align="center">
|
|
|
|
+ <template slot-scope="{row}">
|
|
|
|
+ <span style="color: red;">{{ row.rate }}%</span>
|
|
|
|
+ </template>
|
|
|
|
+ </el-table-column>
|
|
|
|
+ </el-table>
|
|
|
|
+ </el-form>
|
|
|
|
+ </el-card>
|
|
|
|
+ </div>
|
|
|
|
+</template>
|
|
|
|
+<script>
|
|
|
|
+import Breadcrumb from '@/components/Breadcrumb'
|
|
|
|
+import WorkflowBoard from '@/components/workflowBoard'
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+export default {
|
|
|
|
+ name: 'declareDetail',
|
|
|
|
+ components: {
|
|
|
|
+ Breadcrumb,
|
|
|
|
+ WorkflowBoard
|
|
|
|
+ },
|
|
|
|
+ filters: {
|
|
|
|
+
|
|
|
|
+ },
|
|
|
|
+ computed: {
|
|
|
|
+ prod(){
|
|
|
|
+ if (this.declareForm.production==='REPORT'){
|
|
|
|
+ return "报告";
|
|
|
|
+ }
|
|
|
|
+ if (this.declareForm.production==='LETTER'){
|
|
|
|
+ return "复评函";
|
|
|
|
+ }
|
|
|
|
+ if (this.declareForm.production==='STATEMENT'){
|
|
|
|
+ return "价值意见书";
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+ },
|
|
|
|
+ data() {
|
|
|
|
+ return {
|
|
|
|
+ activeNames: ['board'],
|
|
|
|
+ nodeBusinessInfo: {
|
|
|
|
+ currentNodePermission: {
|
|
|
|
+ commit: true,
|
|
|
|
+ reversible: true,
|
|
|
|
+ restartable: true,
|
|
|
|
+ terminable: true,
|
|
|
|
+ skippable: true,
|
|
|
|
+ },
|
|
|
|
+ mainBusiness: null,
|
|
|
|
+ doWorkflow: null,
|
|
|
|
+ businessSubId: null,
|
|
|
|
+ businessId: null,
|
|
|
|
+ currentNodeInstanceId: null,
|
|
|
|
+ production: []
|
|
|
|
+ },
|
|
|
|
+ doWorkflow: false,
|
|
|
|
+ declareForm: {
|
|
|
|
+ orderId: null,
|
|
|
|
+ name: null,
|
|
|
|
+ reportNo: null,
|
|
|
|
+ businessId: null,
|
|
|
|
+ productionId: null,
|
|
|
|
+ businessType: 'COMMISSION_DECLARE_MAJOR_MARKET',
|
|
|
|
+ commissionRateId: null,
|
|
|
|
+ userShareRates: [
|
|
|
|
+ {
|
|
|
|
+ userId: this.$store.getters.userInfo.id,
|
|
|
|
+ rate: 100
|
|
|
|
+ }
|
|
|
|
+ ],
|
|
|
|
+ production:null
|
|
|
|
+
|
|
|
|
+ },
|
|
|
|
+ users: [],
|
|
|
|
+ cates: []
|
|
|
|
+ }
|
|
|
|
+ },
|
|
|
|
+ created() {
|
|
|
|
+ this.nodeBusinessInfo.businessId = this.$route.query.businessId;
|
|
|
|
+ this.nodeBusinessInfo.mainBusiness = this.$route.query.businessType;
|
|
|
|
+ this.doWorkflow = this.$route.query.doWorkflow === 'true';
|
|
|
|
+ this.getCurrentNodeInfo();
|
|
|
|
+ this.businessId = this.$route.query.businessId;
|
|
|
|
+ this.getDeclareDetail();
|
|
|
|
+ },
|
|
|
|
+ methods: {
|
|
|
|
+
|
|
|
|
+ getCurrentNodeInfo() {
|
|
|
|
+ if (this.nodeBusinessInfo.businessId) {
|
|
|
|
+ this.$api.workNodeInstance.currentNode({
|
|
|
|
+ "mainBusiness": this.nodeBusinessInfo.mainBusiness,
|
|
|
|
+ "businessId": this.nodeBusinessInfo.businessId
|
|
|
|
+ }).then(res => {
|
|
|
|
+ if (res.code === 200) {
|
|
|
|
+ if (res.data) {
|
|
|
|
+ this.currentNode = res.data;
|
|
|
|
+ this.nodeBusinessInfo.currentNodeInstanceId = res.data.instanceId;
|
|
|
|
+ this.nodeBusinessInfo.currentNodePermission.restartable = res.data.restartable;
|
|
|
|
+ this.nodeBusinessInfo.currentNodePermission.reversible = res.data.reversible;
|
|
|
|
+ this.nodeBusinessInfo.currentNodePermission.skippable = res.data.skippable;
|
|
|
|
+ this.nodeBusinessInfo.currentNodePermission.terminable = res.data.terminable;
|
|
|
|
+ this.$refs.board.getInstanceQueue();
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+ })
|
|
|
|
+ }
|
|
|
|
+ },
|
|
|
|
+ goBack() {
|
|
|
|
+ const back = this.$route.query.back
|
|
|
|
+ if (back) {
|
|
|
|
+ this.$router.push(back)
|
|
|
|
+ }
|
|
|
|
+ },
|
|
|
|
+ getSimpleAllUser() {
|
|
|
|
+ this.$api.user.simpleAll().then(res => {
|
|
|
|
+ if (res.code === 200) {
|
|
|
|
+ this.users = res.data;
|
|
|
|
+ }
|
|
|
|
+ })
|
|
|
|
+ },
|
|
|
|
+ getMajorMarketCate() {
|
|
|
|
+ this.$api.businessCommissionRate.cateList("BUSINESS_MAJOR", "MARKETER").then(res => {
|
|
|
|
+ if (res.code === 200) {
|
|
|
|
+ this.cates = res.data;
|
|
|
|
+ }
|
|
|
|
+ })
|
|
|
|
+ },
|
|
|
|
+ getDeclareDetail() {
|
|
|
|
+ this.$api.commissonDeclare.detail(this.businessId).then(res => {
|
|
|
|
+ if (res.code === 200) {
|
|
|
|
+ this.declareForm = res.data;
|
|
|
|
+ }
|
|
|
|
+ })
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ },
|
|
|
|
+
|
|
|
|
+}
|
|
|
|
+</script>
|
|
|
|
+<style lang="scss" scoped>
|
|
|
|
+/deep/.doWarehouseClass {
|
|
|
|
+ border-radius: 10px;
|
|
|
|
+}
|
|
|
|
+
|
|
|
|
+.real-amount {
|
|
|
|
+ /deep/ .el-form-item__label {
|
|
|
|
+ color: red;
|
|
|
|
+ font-weight: bold
|
|
|
|
+ }
|
|
|
|
+}
|
|
|
|
+
|
|
|
|
+.button-area {
|
|
|
|
+ position: absolute;
|
|
|
|
+ top: 70px;
|
|
|
|
+ right: 50px;
|
|
|
|
+}
|
|
|
|
+</style>
|