Browse Source

完善预约单管理

master
yunuo970428 12 months ago
parent
commit
c44be7a09d
  1. 6
      yxt-as-ui/src/views/operation/preregistration/preregistration.vue
  2. 81
      yxt-as-ui/src/views/operation/preregistration/preregistrationAdd.vue
  3. 16
      yxt-as-ui/src/views/operation/preregistration/preregistrationInfo.vue

6
yxt-as-ui/src/views/operation/preregistration/preregistration.vue

@ -41,10 +41,10 @@
<el-form-item label="服务顾问">
<el-input v-model="listQuery.params.waitorName" placeholder="" clearable/>
</el-form-item>
<el-form-item label="预约日期">
<el-date-picker v-model="listQuery.params.startDate" value-format="yyyy-MM-dd" format="yyyy-MM-dd" type="date" placeholder="选择日期"></el-date-picker>
<el-form-item label="预约时间">
<el-date-picker v-model="listQuery.params.startDate" value-format="yyyy-MM-dd HH:mm:ss" format="yyyy-MM-dd HH:mm:ss" type="datetime" placeholder="选择日期"></el-date-picker>
<span style="padding: 0 8px"></span>
<el-date-picker v-model="listQuery.params.endDate" value-format="yyyy-MM-dd" format="yyyy-MM-dd" type="date" placeholder="选择日期"></el-date-picker>
<el-date-picker v-model="listQuery.params.endDate" value-format="yyyy-MM-dd HH:mm:ss" format="yyyy-MM-dd HH:mm:ss" type="datetime" placeholder="选择日期"></el-date-picker>
</el-form-item>
<el-form-item label="状态">
<el-select v-model="listQuery.params.state" clearable placeholder="请选择" filterable>

81
yxt-as-ui/src/views/operation/preregistration/preregistrationAdd.vue

@ -29,24 +29,24 @@
</el-row>
<el-row>
<el-col :span="8">
<div class="span-sty">预约服务顾问</div>
<div class="span-sty"><span class="icon">*</span>预约服务顾问</div>
<el-form-item>
<el-select class="addinputInfo" v-model="formobj.waitorName" placeholder="请选择" @change="waitorChange" clearable filterable>
<el-option v-for="item in user_list" :key="item.sid" :label="item.name" :value="item.name"></el-option>
</el-select>
</el-form-item>
</el-col>
<el-col :span="8">
<el-col :span="6">
<div class="span-sty">预约设备</div>
<el-form-item><el-input class="addinputInfo addinputw" v-model="formobj.reserveEquip" clearable placeholder="" /></el-form-item>
</el-col>
<el-col :span="8">
<div class="span-sty">预约日期</div>
<el-col :span="10">
<div class="span-sty"><span class="icon">*</span>预约日期</div>
<el-form-item>
<div class="addinputInfo">
<el-date-picker v-model="formobj.reserveStart" style="width: 140px" value-format="yyyy-MM-dd" format="yyyy-MM-dd" type="date" placeholder="选择日期" />
<el-date-picker v-model="formobj.reserveStart" :picker-options="pickerStartData(formobj.reserveEnd)" style="width: 200px" value-format="yyyy-MM-dd HH:mm:ss" format="yyyy-MM-dd HH:mm:ss" type="datetime" placeholder="选择日期" />
<span style="padding: 0 4px"></span>
<el-date-picker v-model="formobj.reserveEnd" :picker-options="pickerEndData(formobj.reserveStart)" style="width: 140px" value-format="yyyy-MM-dd" format="yyyy-MM-dd" type="date" placeholder="选择日期" />
<el-date-picker v-model="formobj.reserveEnd" :picker-options="pickerEndData(formobj.reserveStart)" style="width: 200px" value-format="yyyy-MM-dd HH:mm:ss" format="yyyy-MM-dd HH:mm:ss" type="datetime" placeholder="选择日期" />
</div>
</el-form-item>
</el-col>
@ -94,11 +94,11 @@
<el-popover placement="right" width="600" trigger="click">
<div>
<el-table :data="serviceData" v-loading="serviceLoading" highlight-current-row @current-change="serviceCurrentChange($event, scope.row)">
<el-table-column fixed prop="sitemName" label="项目名称" align="center" width="130" />
<el-table-column prop="sitemCode" label="项目编码" align="center" width="100" />
<el-table-column prop="hourPrice" label="工时单价" align="center" min-width="300" />
<el-table-column prop="hours" label="工时数" align="center" width="100" />
<el-table-column prop="price" label="销售价" align="center" width="100" />
<el-table-column fixed prop="sitemName" label="项目名称" align="center" />
<el-table-column prop="sitemCode" label="项目编码" align="center" />
<el-table-column prop="hourPrice" label="工时单价" align="center" />
<el-table-column prop="hours" label="工时数" align="center" />
<el-table-column prop="price" label="销售价" align="center" />
</el-table>
<el-pagination :page.sync="serviceQuery.current" :page-size="serviceQuery.size" layout="total, pager" :total="serviceQuery.total" />
</div>
@ -182,6 +182,7 @@ export default {
total: 0,
params: {
sitemName: '',
type: '0',
orgPath: ''
}
},
@ -209,12 +210,19 @@ export default {
trackLogs: [],
createDeptSid: '',
createDept: '',
customerOrg: ''
customerOrg: '',
userSid: ''
},
rules: {}
}
},
methods: {
//
pickerStartData(newtime) {
return {
disabledDate(time) { return time.getTime() > new Date(newtime) - 1000 * 60 * 60 * 24 }
}
},
//
pickerEndData(newtime) {
return {
@ -237,6 +245,7 @@ export default {
this.formobj.orgPath = window.sessionStorage.getItem('defaultOrgPath')
this.formobj.createByName = window.sessionStorage.getItem('name')
this.formobj.createBySid = window.sessionStorage.getItem('userSid')
this.formobj.userSid = window.sessionStorage.getItem('userSid')
this.formobj.createDept = window.sessionStorage.getItem('defaultOrgPathName').substring(window.sessionStorage.getItem('defaultOrgPathName').lastIndexOf('/') + 1)
this.formobj.createDeptSid = window.sessionStorage.getItem('defaultOrgPath').substring(window.sessionStorage.getItem('defaultOrgPath').lastIndexOf('/') + 1)
var nowDate = new Date()
@ -360,12 +369,25 @@ export default {
}
},
saveOrUpdate() {
if (this.formobj.waitorName === '') {
this.$message({ showClose: true, type: 'error', message: '预约服务顾问不能为空' })
return
}
if (this.formobj.reserveStart === '' || this.formobj.reserveEnd === '') {
this.$message({ showClose: true, type: 'error', message: '预约时间不能为空' })
return
}
if (this.formobj.customerName === '') {
this.$message({ showClose: true, type: 'error', message: '客户信息不能为空' })
return
}
if (this.formobj.sitemVos.length === 0) {
this.$message({ showClose: true, type: 'error', message: '服务项目列表不能为空' })
return
}
this.$refs['form_obj'].validate((valid) => {
if (valid) {
if (this.formobj.sitemVos.length === 0) {
this.$message({ showClose: true, type: 'error', message: '服务项目列表不能为空' })
return
}
this.submitdisabled = true
req.saveOrUpdate(this.formobj).then((res) => {
if (res.success) {
@ -381,16 +403,24 @@ export default {
})
},
toService() {
if (this.formobj.waitorName === '') {
this.$message({ showClose: true, type: 'error', message: '预约服务顾问不能为空' })
return
}
if (this.formobj.reserveStart === '' || this.formobj.reserveEnd === '') {
this.$message({ showClose: true, type: 'error', message: '预约时间不能为空' })
return
}
if (this.formobj.customerName === '') {
this.$message({ showClose: true, type: 'error', message: '客户信息不能为空' })
return
}
if (this.formobj.sitemVos.length === 0) {
this.$message({ showClose: true, type: 'error', message: '服务项目列表不能为空' })
return
}
this.$refs['form_obj'].validate((valid) => {
if (valid) {
if (this.formobj.sitemVos.length === 0) {
this.$message({ showClose: true, type: 'error', message: '服务项目列表不能为空' })
return
}
if (this.formobj.sitemVos.length === 0) {
this.$message({ showClose: true, type: 'error', message: '表格不能为空' })
return
}
this.submitdisabled = true
req.convertedRepairOrders(this.formobj).then((res) => {
if (res.success) {
@ -458,7 +488,8 @@ export default {
trackLogs: [],
createDeptSid: '',
createDept: '',
customerOrg: ''
customerOrg: '',
userSid: ''
}
this.submitdisabled = false
this.$emit('doback')

16
yxt-as-ui/src/views/operation/preregistration/preregistrationInfo.vue

@ -28,11 +28,11 @@
<div class="span-sty">预约服务顾问</div>
<el-form-item><span class="addinputInfo">{{ formobj.waitorName }}</span></el-form-item>
</el-col>
<el-col :span="8">
<el-col :span="6">
<div class="span-sty">预约设备</div>
<el-form-item><span class="addinputInfo">{{ formobj.reserveEquip }}</span></el-form-item>
</el-col>
<el-col :span="8">
<el-col :span="10">
<div class="span-sty">预约时间</div>
<el-form-item><span class="addinputInfo">{{ formobj.reserveStart }} {{ formobj.reserveEnd }}</span></el-form-item>
</el-col>
@ -74,9 +74,10 @@
<el-table-column prop="remarks" label="备注" align="center" min-width="200" />
</el-table>
<div class="title">跟踪记录</div>
<el-table :key="tableKey" :data="list" :index="index" border style="width: 100%">
<el-table :key="tableKey" :data="formobj.trackLogs" :index="index" border style="width: 100%">
<el-table-column fixed width="60" label="序号" type="index" :index="index + 1" align="center" />
<el-table-column prop="name" label="记录内容" align="left" header-align="center" />
<el-table-column prop="remarks" label="记录内容" align="left" header-align="center" />
<el-table-column prop="createTime" label="跟踪时间" align="left" header-align="center" />
</el-table>
</el-form>
</div>
@ -94,7 +95,6 @@ export default {
index: 0,
serviceKey: 0,
tableKey: 1,
list: [],
formobj: {
sid: '',
createBySid: '',
@ -118,7 +118,8 @@ export default {
trackLogs: [],
createDeptSid: '',
createDept: '',
customerOrg: ''
customerOrg: '',
userSid: ''
}
}
},
@ -162,7 +163,8 @@ export default {
trackLogs: [],
createDeptSid: '',
createDept: '',
customerOrg: ''
customerOrg: '',
userSid: ''
}
this.$emit('doback')
}

Loading…
Cancel
Save