| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143 |
- <template>
- <el-dialog title="试用反馈" :visible.sync="dialogFormVisible" width="600px" @close="close">
- <el-form ref="form" label-position="top" :model="form" :rules="rules">
- <el-row :gutter="20">
- <el-col :span="24">
- <el-form-item label="反馈时间" prop="feedbackTrialTime">
- <el-date-picker
- v-model="form.feedbackTrialTime"
- placeholder="选择反馈时间"
- style="width: 100%"
- type="date"
- value-format="yyyy-MM-dd" />
- </el-form-item>
- </el-col>
- <el-col :span="24">
- <el-form-item :label="summarizeLabel" prop="feedbackTrialContent">
- <el-input
- v-model="form.feedbackTrialContent"
- :placeholder="summarizeLabel"
- :rows="5"
- show-word-limit
- type="textarea" />
- </el-form-item>
- </el-col>
- <el-col :span="24">
- <el-form-item label="讲解纪要补充" prop="feedbackTrialDist">
- <el-input
- v-model="form.feedbackTrialDist"
- placeholder="讲解纪要补充"
- :rows="5"
- show-word-limit
- type="textarea" />
- </el-form-item>
- </el-col>
- <el-col :span="24">
- <el-form-item :label="nextPlanLabel" prop="feedbackTrialPlan">
- <el-input
- v-model="form.feedbackTrialPlan"
- :placeholder="nextPlanLabel"
- :rows="5"
- show-word-limit
- type="textarea" />
- </el-form-item>
- </el-col>
- </el-row>
- </el-form>
- <template #footer>
- <el-button @click="close">取 消</el-button>
- <el-button type="primary" @click="save">确 定</el-button>
- </template>
- </el-dialog>
- </template>
- <script>
- import workOrderApi from '@/api/work/index'
- export default {
- name: 'WorkOrderFeedback',
- data() {
- return {
- workType: '',
- fbType: '',
- form: {
- feedbackTrialTime: '',
- feedbackTrialContent: '',
- feedbackTrialDist: '',
- feedbackTrialPlan: '',
- workOrderId: '',
- },
- rules: {
- feedbackTrialTime: [{ required: true, message: '不能为空', trigger: ['blur', 'change'] }],
- feedbackTrialContent: [{ required: true, message: '不能为空', trigger: ['blur', 'change'] }],
- feedbackTrialDist: [{ required: true, message: '不能为空', trigger: ['blur', 'change'] }],
- feedbackTrialPlan: [{ required: true, message: '不能为空', trigger: ['blur', 'change'] }],
- },
- feedbackTrialTypeObj: {
- start: '10',
- process: '20',
- summarize: '30',
- },
- dialogFormVisible: false,
- }
- },
- computed: {
- summarizeLabel() {
- let str = ''
- switch (this.fbType) {
- case 'start':
- str = this.workType == '产品试用申请(软件)' ? '部署安装总结' : '会议总结'
- break
- case 'process':
- str = '过程问题'
- break
- case 'summarize':
- str = '使用总结'
- break
- }
- return str
- },
- nextPlanLabel() {
- let str = ''
- switch (this.fbType) {
- case 'start':
- str = '跟进计划'
- break
- case 'process':
- str = '跟进计划'
- break
- case 'summarize':
- str = '下一步计划'
- break
- }
- return str
- },
- },
- mounted() {},
- methods: {
- open(row, type) {
- console.log(row, type)
- this.form.workOrderId = row.id
- this.workType = row.orderTypeName
- this.fbType = type
- this.dialogFormVisible = true
- },
- close() {
- this.$refs['form'].resetFields()
- this.form = this.$options.data().form
- this.dialogFormVisible = false
- },
- save() {
- this.$refs['form'].validate(async (valid) => {
- if (valid) {
- let params = Object.assign(this.form)
- params.feedbackTrialType = this.feedbackTrialTypeObj[this.fbType]
- const { msg } = await workOrderApi.feedbackTrail(params)
- this.$baseMessage(msg, 'success', 'vab-hey-message-success')
- this.$emit('update-detail')
- this.close()
- }
- })
- },
- },
- }
- </script>
|