|
@@ -2,23 +2,62 @@
|
|
|
<div class="app-container">
|
|
|
<el-form :model="queryParams" ref="queryForm" size="small" :inline="true" v-show="showSearch" label-width="68px">
|
|
|
<el-form-item label="编码" prop="code">
|
|
|
- <el-input
|
|
|
- v-model="queryParams.code"
|
|
|
- placeholder="请输入编码"
|
|
|
+ <el-input v-model="queryParams.code" placeholder="请输入编码" clearable @keyup.enter.native="handleQuery"/>
|
|
|
+ </el-form-item>
|
|
|
+ <el-form-item label="目标名称" prop="goalName">
|
|
|
+ <el-input v-model="queryParams.goalName" placeholder="请输入目标名称" clearable @keyup.enter.native="handleQuery"/>
|
|
|
+ </el-form-item>
|
|
|
+ <el-form-item label="单据日期" prop="documentDate">
|
|
|
+ <el-date-picker
|
|
|
+ v-model="documentDateRange"
|
|
|
+ @change="setBeginAndEnd"
|
|
|
+ value-format="yyyy-MM-dd"
|
|
|
+ type="daterange"
|
|
|
+ align="right"
|
|
|
+ unlink-panels
|
|
|
+ range-separator="至"
|
|
|
+ start-placeholder="开始日期"
|
|
|
+ end-placeholder="结束日期"
|
|
|
+ :picker-options="pickerOptions">
|
|
|
+ </el-date-picker>
|
|
|
+ </el-form-item>
|
|
|
+ <el-form-item label="年度" prop="annual">
|
|
|
+ <el-date-picker
|
|
|
+ v-model="queryParams.annual"
|
|
|
+ type="year"
|
|
|
+ value-format="yyyy"
|
|
|
+ placeholder="选择年度"
|
|
|
clearable
|
|
|
- @keyup.enter.native="handleQuery"
|
|
|
- />
|
|
|
+ @keyup.enter.native="handleQuery">
|
|
|
+ </el-date-picker>
|
|
|
+ </el-form-item>
|
|
|
+ <el-form-item label="部门" prop="dept">
|
|
|
+ <el-popover-select-v2 v-model="queryParams.dept" title="部门" valueKey="name"
|
|
|
+ referName="DEPT_PARAM"
|
|
|
+ :dataMapping="{ deptCode: 'code', dept: 'name'}"
|
|
|
+ :source.sync="queryParams" placeholder="请输入部门" @keyup.enter.native="handleQuery">
|
|
|
+ </el-popover-select-v2>
|
|
|
+ </el-form-item>
|
|
|
+ <el-form-item label="目标类型" prop="goalCategory">
|
|
|
+ <el-select v-model="queryParams.goalCategory" placeholder="请输入目标类型">
|
|
|
+ <el-option
|
|
|
+ v-for="item in [{ value: '销售区域', label: '销售区域' }, { value: '一级分类', label: '一级分类' }, { value: '二级分类', label: '二级分类' }]"
|
|
|
+ :key="item.value"
|
|
|
+ :label="item.label"
|
|
|
+ :value="item.value">
|
|
|
+ </el-option>
|
|
|
+ </el-select>
|
|
|
</el-form-item>
|
|
|
<el-form-item label="销售区域" prop="saleZone">
|
|
|
<el-popover-select-v2 v-model="queryParams.saleZoneCode" title="销售区域" valueKey="name"
|
|
|
- referName="DEPT_PARAM"
|
|
|
+ referName="CUSTOMER_PARAM"
|
|
|
:dataMapping="{ saleZoneCode: 'code', saleZone: 'name'}"
|
|
|
:source.sync="queryParams" placeholder="请输入销售区域">
|
|
|
</el-popover-select-v2>
|
|
|
</el-form-item>
|
|
|
<el-form-item label="制单人" prop="creator">
|
|
|
<el-popover-select-v2 v-model="queryParams.creator" title="制单人" valueKey="name"
|
|
|
- referName="CUSTOMER_PARAM"
|
|
|
+ referName="CONTACTS_PARAM"
|
|
|
:dataMapping="{ creatorCode: 'code', creator: 'name'}"
|
|
|
:source.sync="queryParams" placeholder="请输入负责人">
|
|
|
</el-popover-select-v2>
|
|
@@ -657,7 +696,34 @@ export default {
|
|
|
oneLevelClassifyCode: null,
|
|
|
oneLevelClassify: null,
|
|
|
twoLevelClassifyCode: null,
|
|
|
- twoLevelClassify: null
|
|
|
+ twoLevelClassify: null,
|
|
|
+ params: { beginTime: null, endTime: null }
|
|
|
+ },
|
|
|
+ documentDateRange: null,
|
|
|
+ pickerOptions: {
|
|
|
+ disabledDate(time) {
|
|
|
+ return time.getTime() > Date.now();
|
|
|
+ },
|
|
|
+ shortcuts: [{
|
|
|
+ text: '今天',
|
|
|
+ onClick(picker) {
|
|
|
+ picker.$emit('pick', new Date());
|
|
|
+ }
|
|
|
+ }, {
|
|
|
+ text: '昨天',
|
|
|
+ onClick(picker) {
|
|
|
+ const date = new Date();
|
|
|
+ date.setTime(date.getTime() - 3600 * 1000 * 24);
|
|
|
+ picker.$emit('pick', date);
|
|
|
+ }
|
|
|
+ }, {
|
|
|
+ text: '一周前',
|
|
|
+ onClick(picker) {
|
|
|
+ const date = new Date();
|
|
|
+ date.setTime(date.getTime() - 3600 * 1000 * 24 * 7);
|
|
|
+ picker.$emit('pick', date);
|
|
|
+ }
|
|
|
+ }]
|
|
|
},
|
|
|
// 表单参数
|
|
|
form: {
|
|
@@ -800,6 +866,29 @@ export default {
|
|
|
},
|
|
|
/** 重置按钮操作 */
|
|
|
resetQuery() {
|
|
|
+ this.queryParams = {
|
|
|
+ pageNum: 1,
|
|
|
+ pageSize: 10,
|
|
|
+ code: null,
|
|
|
+ goalName: null,
|
|
|
+ documentDate: null,
|
|
|
+ annual: null,
|
|
|
+ creatorCode: null,
|
|
|
+ creator: null,
|
|
|
+ deptCode: null,
|
|
|
+ dept: null,
|
|
|
+ goalCategory: null,
|
|
|
+ goalTotal: null,
|
|
|
+ notes: null,
|
|
|
+ documentStatus: null,
|
|
|
+ delFlag: null,
|
|
|
+ saleZoneCode: null,
|
|
|
+ saleZone: null,
|
|
|
+ oneLevelClassifyCode: null,
|
|
|
+ oneLevelClassify: null,
|
|
|
+ twoLevelClassifyCode: null,
|
|
|
+ twoLevelClassify: null
|
|
|
+ }
|
|
|
this.resetForm("queryForm");
|
|
|
this.handleQuery();
|
|
|
},
|
|
@@ -1169,7 +1258,17 @@ export default {
|
|
|
} else if (this.activeName === 'customerGoalSum(year)') {
|
|
|
this.customerDetailList = mergedArray
|
|
|
}
|
|
|
- }
|
|
|
+ },
|
|
|
+ setBeginAndEnd() {
|
|
|
+ let array = this.documentDateRange
|
|
|
+ if (array !== null) {
|
|
|
+ this.queryParams.params.beginTime = array[0]
|
|
|
+ this.queryParams.params.endTime = array[1]
|
|
|
+ } else {
|
|
|
+ this.queryParams.beginTime = null
|
|
|
+ this.queryParams.endTime = null
|
|
|
+ }
|
|
|
+ },
|
|
|
}
|
|
|
};
|
|
|
</script>
|