flat: 合并
This commit is contained in:
@@ -44,5 +44,13 @@ export const getQueryQuestionnaireSurveyUserBySurveyId =
|
||||
params
|
||||
})
|
||||
}
|
||||
export const disposeQuestionnaireSurveyInfo =
|
||||
(params) => {
|
||||
return request({
|
||||
url: '/api/jobslink-api/content/questionnaireSurveyInfo/dispose',
|
||||
method: 'post',
|
||||
data: params
|
||||
})
|
||||
}
|
||||
|
||||
|
||||
|
||||
@@ -8,3 +8,11 @@ export const getList =
|
||||
params
|
||||
})
|
||||
}
|
||||
export const consultMailboxInfoUpdate =
|
||||
(params) => {
|
||||
return request({
|
||||
url: '/api/jobslink-api/content/consultMailboxInfo/update',
|
||||
method: 'PUT',
|
||||
data: params
|
||||
})
|
||||
}
|
||||
|
||||
@@ -18,3 +18,14 @@ export const getInfo =
|
||||
params,
|
||||
})
|
||||
}
|
||||
|
||||
export const updateSuperviseComplaintInfo =
|
||||
(params) => {
|
||||
return request({
|
||||
url: '/api/jobslink-api/content/superviseComplaintInfo/update',
|
||||
method: 'PUT',
|
||||
data: params,
|
||||
})
|
||||
}
|
||||
|
||||
|
||||
|
||||
@@ -52,3 +52,11 @@ export const publishEmploymentSurveyManage =
|
||||
})
|
||||
}
|
||||
|
||||
export const disposeEmploymentSurveyManage =
|
||||
(params) => {
|
||||
return request({
|
||||
url: '/api/jobslink-api/content/employmentSurveyManage/dispose',
|
||||
method: 'post',
|
||||
data: params,
|
||||
})
|
||||
}
|
||||
|
||||
126
src/components/yearRange/index.vue
Normal file
126
src/components/yearRange/index.vue
Normal file
@@ -0,0 +1,126 @@
|
||||
<template>
|
||||
<div class="year-range-picker">
|
||||
<el-date-picker
|
||||
v-model="dateList[0]"
|
||||
type="year"
|
||||
placeholder="选择开始年"
|
||||
:size="size"
|
||||
class="year-picker"
|
||||
format="yyyy"
|
||||
:value-format="valueFormat"
|
||||
:picker-options="startDatePicker"
|
||||
>
|
||||
</el-date-picker>
|
||||
<span class="range-word"> 至 </span>
|
||||
<el-date-picker
|
||||
v-model="dateList[1]"
|
||||
type="year"
|
||||
placeholder="选择结束年"
|
||||
:size="size"
|
||||
class="year-picker"
|
||||
:value-format="valueFormat"
|
||||
:picker-options="endDatePicker"
|
||||
>
|
||||
</el-date-picker>
|
||||
</div>
|
||||
</template>
|
||||
|
||||
|
||||
<script>
|
||||
export default {
|
||||
name: "el-year-picker",
|
||||
// 接收父组件传入的数据
|
||||
props: {
|
||||
value: {
|
||||
// type: Array,
|
||||
required: true,
|
||||
},
|
||||
size: {
|
||||
type: String, default: 'mini'
|
||||
},
|
||||
valueFormat: {
|
||||
type: String, default: 'yyyy'
|
||||
},
|
||||
},
|
||||
data() {
|
||||
return {
|
||||
dateList: [],
|
||||
startDatePicker: this.beginDate(),
|
||||
endDatePicker: this.processDate(),
|
||||
};
|
||||
},
|
||||
watch: {
|
||||
value(v) {
|
||||
this.dateList = v || []
|
||||
},
|
||||
dateList(v) {
|
||||
this.$emit('input', v)
|
||||
}
|
||||
},
|
||||
mounted() {
|
||||
},
|
||||
methods: {
|
||||
// 选择年份范围选择时开始时间不能大于结束时间,结束时间不能小于开始时间
|
||||
|
||||
// 提出开始时间必须小于提出结束时间
|
||||
beginDate() {
|
||||
let self = this
|
||||
return {
|
||||
disabledDate(time) {
|
||||
if (self.dateList[1] !== '') {
|
||||
let fixedTime = new Date(time)
|
||||
return fixedTime.getFullYear() > self.dateList[1]
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
// 提出结束时间必须大于提出开始时间
|
||||
processDate() {
|
||||
let self = this
|
||||
return {
|
||||
disabledDate(time) {
|
||||
// let fixedTime = new Date(self.oldTime).getTime()
|
||||
// return time.getTime() < fixedTime
|
||||
let fixedTime = new Date(time)
|
||||
return fixedTime.getFullYear() < self.dateList[0]
|
||||
}
|
||||
}
|
||||
},
|
||||
|
||||
},
|
||||
};
|
||||
</script>
|
||||
|
||||
|
||||
<style scoped>
|
||||
.year-range-picker {
|
||||
color: black;
|
||||
text-align: center;
|
||||
border: 1px solid #dcdfe6;
|
||||
border-radius: 4px;
|
||||
line-height: 30px;
|
||||
overflow: hidden;
|
||||
display: flex;
|
||||
}
|
||||
|
||||
>>> .el-input__inner {
|
||||
border: 0;
|
||||
/*padding: 0;*/
|
||||
line-height: 28px;
|
||||
height: 28px;
|
||||
margin: 0;
|
||||
}
|
||||
|
||||
.range-word {
|
||||
margin-left: 10px;
|
||||
margin-right: 10px;
|
||||
font-size: 12px;
|
||||
}
|
||||
|
||||
.year-range-picker .year-picker {
|
||||
max-width: 150px;
|
||||
margin: 0;
|
||||
}
|
||||
</style>
|
||||
|
||||
|
||||
@@ -17,7 +17,14 @@
|
||||
@refresh-change="refreshChange"
|
||||
@search-reset="searchReset"
|
||||
>
|
||||
|
||||
<template slot-scope="{ row }" slot="menu">
|
||||
<el-button
|
||||
type="text"
|
||||
size="small"
|
||||
@click.stop="updateRow(row)"
|
||||
><i class="el-icon-share"></i>处理
|
||||
</el-button>
|
||||
</template>
|
||||
</avue-crud>
|
||||
</el-drawer>
|
||||
</template>
|
||||
@@ -25,6 +32,7 @@
|
||||
<script>
|
||||
import {
|
||||
getQueryQuestionnaireSurveyUserBySurveyId,
|
||||
disposeQuestionnaireSurveyInfo
|
||||
} from '@/api/help/applicationsRecord/applicationsRecord'
|
||||
|
||||
const initPages = {
|
||||
@@ -32,6 +40,18 @@ const initPages = {
|
||||
currentPage: 1,
|
||||
total: 100,
|
||||
}
|
||||
const classIsDeleted = {
|
||||
0: '否',
|
||||
1: '是',
|
||||
}
|
||||
const classStatus = {
|
||||
0: '未处理',
|
||||
1: '已处理',
|
||||
2: '关闭'
|
||||
}
|
||||
const classEnumStatus = Object.keys(classStatus).map((item) => ({
|
||||
label: classStatus[item], value: Number(item)
|
||||
}))
|
||||
export default {
|
||||
props: {
|
||||
visible: Boolean,
|
||||
@@ -58,7 +78,6 @@ export default {
|
||||
border: true,
|
||||
columnBtn: false,
|
||||
refreshBtn: false,
|
||||
menu: false,
|
||||
tip: false,
|
||||
selection: true,
|
||||
searchMenuSpan: 6,
|
||||
@@ -85,6 +104,17 @@ export default {
|
||||
}, {
|
||||
label: '创建时间',
|
||||
prop: 'createTime',
|
||||
}, {
|
||||
label: "是否处理",
|
||||
prop: "status",
|
||||
type: "select",
|
||||
dicData: classEnumStatus,
|
||||
search: true,
|
||||
},
|
||||
{
|
||||
label: "处置情况",
|
||||
prop: "disposalSituation",
|
||||
search: true,
|
||||
},
|
||||
]
|
||||
}
|
||||
@@ -136,6 +166,37 @@ export default {
|
||||
this.page.currentPage = 1
|
||||
this.onLoad();
|
||||
},
|
||||
updateRow(row) {
|
||||
const _this = this
|
||||
let h = this.$createElement;
|
||||
this.$prompt("回复处理", // "请核对信息后",
|
||||
{
|
||||
distinguishCancelAndClose: true,
|
||||
confirmButtonText: "完 成",
|
||||
cancelButtonText: "取 消",
|
||||
center: true,
|
||||
inputType: "textarea",
|
||||
inputPlaceholder: "处理内容",
|
||||
beforeClose: async function (action, instance, done) {
|
||||
if (action === 'confirm') {
|
||||
const disposalSituation = instance.inputValue
|
||||
if (!disposalSituation) {
|
||||
this.$message({type: "info", message: "请输入处理内容"});
|
||||
} else {
|
||||
let resData = await disposeQuestionnaireSurveyInfo({id: row.id, disposalSituation, status: 1})
|
||||
if (resData.data.code === 200) {
|
||||
this.$message({type: "success", message: "操作成功"});
|
||||
done()
|
||||
_this.onLoad();
|
||||
}
|
||||
}
|
||||
} else {
|
||||
done()
|
||||
}
|
||||
}
|
||||
}
|
||||
)
|
||||
},
|
||||
onLoad() {
|
||||
if (!this.rowData) return
|
||||
return new Promise(async (resolve, reject) => {
|
||||
|
||||
@@ -16,6 +16,14 @@
|
||||
<!-- <template slot="menu" slot-scope="{row}">-->
|
||||
<!-- <el-button size="small" type="text" @click="seeDetail(row)">查看</el-button>-->
|
||||
<!-- </template>-->
|
||||
<template slot-scope="{ row }" slot="menu">
|
||||
<el-button
|
||||
type="text"
|
||||
size="small"
|
||||
@click.stop="updateRow(row)"
|
||||
><i class="el-icon-share"></i>处理
|
||||
</el-button>
|
||||
</template>
|
||||
</avue-crud>
|
||||
<!-- 新增、编辑 -->
|
||||
<!-- <el-drawer :title="drawerTitle" :visible.sync="viewDrawer" size="60%">-->
|
||||
@@ -39,7 +47,7 @@
|
||||
<script>
|
||||
import {dateFormat} from '@/util/date'
|
||||
import Tinymce from "@/components/Tinymce";
|
||||
import {getList} from '@/api/manage/mailbox'
|
||||
import {getList, consultMailboxInfoUpdate} from '@/api/manage/mailbox'
|
||||
|
||||
const classStatus = {
|
||||
0: '未处理',
|
||||
@@ -181,6 +189,37 @@ export default {
|
||||
},
|
||||
methods: {
|
||||
dateFormat,
|
||||
updateRow(row) {
|
||||
const _this = this
|
||||
let h = this.$createElement;
|
||||
this.$prompt("回复信件", // "请核对信息后",
|
||||
{
|
||||
distinguishCancelAndClose: true,
|
||||
confirmButtonText: "完 成",
|
||||
cancelButtonText: "取 消",
|
||||
center: true,
|
||||
inputType: "textarea",
|
||||
inputPlaceholder: "处理内容",
|
||||
beforeClose: async function (action, instance, done) {
|
||||
if (action === 'confirm') {
|
||||
const disposalSituation = instance.inputValue
|
||||
if (!disposalSituation) {
|
||||
this.$message({type: "info", message: "请输入处理内容"});
|
||||
} else {
|
||||
let resData = await consultMailboxInfoUpdate({id: row.id, disposalSituation, status: 1})
|
||||
if (resData.data.code === 200) {
|
||||
this.$message({type: "success", message: "操作成功"});
|
||||
done()
|
||||
_this.onLoad();
|
||||
}
|
||||
}
|
||||
} else {
|
||||
done()
|
||||
}
|
||||
}
|
||||
}
|
||||
)
|
||||
},
|
||||
look(row) {
|
||||
this.drawerTitle = '查看'
|
||||
this.lookData = JSON.parse(JSON.stringify(row))
|
||||
|
||||
@@ -19,7 +19,7 @@
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
<el-form-item label="日期类型:" v-if="query.type === 2">
|
||||
<el-select v-model="query.timeType" @blur="delete query.stime">
|
||||
<el-select v-model="query.timeType" @blur="delete query.time">
|
||||
<el-option
|
||||
v-for="(item, index) in times"
|
||||
:key="index"
|
||||
@@ -30,10 +30,17 @@
|
||||
</el-form-item>
|
||||
<el-form-item label="日期:" v-if="query.type === 2">
|
||||
<el-date-picker
|
||||
v-model="query.stime"
|
||||
v-if="timeEleType[query.timeType] === 'monthrange'"
|
||||
v-model="query.time"
|
||||
:type="timeEleType[query.timeType]"
|
||||
placeholder="选择日期">
|
||||
placeholder="选择开始日期"
|
||||
start-placeholder="开始日期"
|
||||
end-placeholder="结束日期">
|
||||
</el-date-picker>
|
||||
<YearRange
|
||||
v-else
|
||||
v-model="query.time"
|
||||
></YearRange>
|
||||
</el-form-item>
|
||||
<div class="searchBtn">
|
||||
<el-button
|
||||
@@ -67,6 +74,7 @@
|
||||
import {
|
||||
getAllCountWorkCount
|
||||
} from "@/api/manage/mission";
|
||||
import YearRange from "@/components/yearRange/index.vue";
|
||||
import {missionState} from "@/common/dic";
|
||||
import {dateFormat} from "@/util/date";
|
||||
|
||||
@@ -82,11 +90,12 @@ let times = [
|
||||
]
|
||||
let timeEleType = {
|
||||
3: 'year',
|
||||
1: 'month',
|
||||
1: 'monthrange',
|
||||
// 3: 'week',
|
||||
}
|
||||
export default {
|
||||
name: 'supplyDemand',
|
||||
components: {YearRange},
|
||||
data() {
|
||||
return {
|
||||
types,
|
||||
@@ -153,25 +162,12 @@ export default {
|
||||
},
|
||||
methods: {
|
||||
searchTabs() {
|
||||
let date = null
|
||||
switch (this.query.timeType) {
|
||||
case 3:
|
||||
date = new Date(this.query.stime);
|
||||
date.setFullYear(date.getFullYear() + 1)
|
||||
this.query.etime = date
|
||||
break
|
||||
case 1:
|
||||
date = new Date(this.query.stime);
|
||||
date.setMonth(date.getMonth() + 1)
|
||||
this.query.etime = date
|
||||
break
|
||||
}
|
||||
this.getDetail()
|
||||
},
|
||||
searchReset() {
|
||||
this.query = {
|
||||
type: 0,
|
||||
time: 1
|
||||
timeType: 1
|
||||
}
|
||||
this.getDetail()
|
||||
},
|
||||
@@ -179,12 +175,16 @@ export default {
|
||||
let params = {
|
||||
...this.query,
|
||||
}
|
||||
if (params.stime) {
|
||||
params.stime = dateFormat(params.stime, 'yyyy-MM-dd hh:mm:ss')
|
||||
}
|
||||
if (params.etime) {
|
||||
params.etime = dateFormat(params.etime, 'yyyy-MM-dd hh:mm:ss')
|
||||
if (params.type === 2 && params.timeType) {
|
||||
if (params.time && params.time.length === 2) {
|
||||
params.stime = dateFormat(typeof params.time[0] === 'string' ? new Date(params.time[0]) : params.time[0], 'yyyy-MM-dd hh:mm:ss')
|
||||
params.etime = dateFormat(typeof params.time[1] === 'string' ? new Date(params.time[1]) : params.time[1], 'yyyy-MM-dd hh:mm:ss')
|
||||
delete params.time
|
||||
} else {
|
||||
return this.$message({type: "info", message: "请选择日期"});
|
||||
}
|
||||
}
|
||||
|
||||
let resData = await getAllCountWorkCount(params)
|
||||
if (resData.data.code === 200) {
|
||||
console.log(resData.data)
|
||||
|
||||
@@ -13,6 +13,14 @@
|
||||
@search-reset="searchReset"
|
||||
@on-load="onLoad"
|
||||
>
|
||||
<template slot-scope="{ row }" slot="menu">
|
||||
<el-button
|
||||
type="text"
|
||||
size="small"
|
||||
@click.stop="updateRow(row)"
|
||||
><i class="el-icon-share"></i>处理
|
||||
</el-button>
|
||||
</template>
|
||||
</avue-crud>
|
||||
</basic-container>
|
||||
</template>
|
||||
@@ -20,7 +28,7 @@
|
||||
<script>
|
||||
import {dateFormat} from '@/util/date'
|
||||
import Tinymce from "@/components/Tinymce";
|
||||
import {getList, getInfo} from '@/api/manage/superviseComplaintInfo'
|
||||
import {getList, getInfo, updateSuperviseComplaintInfo} from '@/api/manage/superviseComplaintInfo'
|
||||
|
||||
const initPages = {
|
||||
pageSize: 10,
|
||||
@@ -83,6 +91,11 @@ const columnList = [
|
||||
dicData: classEnumStatus,
|
||||
search: true,
|
||||
},
|
||||
{
|
||||
label: "处置情况",
|
||||
prop: "disposalSituation",
|
||||
search: true,
|
||||
},
|
||||
{
|
||||
label: "是否删除",
|
||||
prop: "isDeleted",
|
||||
@@ -166,6 +179,37 @@ export default {
|
||||
},
|
||||
methods: {
|
||||
dateFormat,
|
||||
updateRow(row) {
|
||||
const _this = this
|
||||
let h = this.$createElement;
|
||||
this.$prompt("回复处理", // "请核对信息后",
|
||||
{
|
||||
distinguishCancelAndClose: true,
|
||||
confirmButtonText: "完 成",
|
||||
cancelButtonText: "取 消",
|
||||
center: true,
|
||||
inputType: "textarea",
|
||||
inputPlaceholder: "处理内容",
|
||||
beforeClose: async function (action, instance, done) {
|
||||
if (action === 'confirm') {
|
||||
const disposalSituation = instance.inputValue
|
||||
if (!disposalSituation) {
|
||||
this.$message({type: "info", message: "请输入处理内容"});
|
||||
} else {
|
||||
let resData = await updateSuperviseComplaintInfo({id: row.id, disposalSituation, status: 1})
|
||||
if (resData.data.code === 200) {
|
||||
this.$message({type: "success", message: "操作成功"});
|
||||
done()
|
||||
_this.onLoad();
|
||||
}
|
||||
}
|
||||
} else {
|
||||
done()
|
||||
}
|
||||
}
|
||||
}
|
||||
)
|
||||
},
|
||||
resetForm(formName) {
|
||||
this.$refs[formName].resetFields();
|
||||
this.viewDrawer = false
|
||||
|
||||
@@ -17,7 +17,14 @@
|
||||
@refresh-change="refreshChange"
|
||||
@search-reset="searchReset"
|
||||
>
|
||||
|
||||
<template slot-scope="{ row }" slot="menu">
|
||||
<el-button
|
||||
type="text"
|
||||
size="small"
|
||||
@click.stop="updateRow(row)"
|
||||
><i class="el-icon-share"></i>处理
|
||||
</el-button>
|
||||
</template>
|
||||
</avue-crud>
|
||||
</el-drawer>
|
||||
</template>
|
||||
@@ -25,6 +32,7 @@
|
||||
<script>
|
||||
import {
|
||||
getQueryEmploymentSurveyUserBySurveyId,
|
||||
disposeEmploymentSurveyManage
|
||||
} from '@/api/manage/survey'
|
||||
|
||||
const initPages = {
|
||||
@@ -32,6 +40,18 @@ const initPages = {
|
||||
currentPage: 1,
|
||||
total: 100,
|
||||
}
|
||||
const classIsDeleted = {
|
||||
0: '否',
|
||||
1: '是',
|
||||
}
|
||||
const classStatus = {
|
||||
0: '未处理',
|
||||
1: '已处理',
|
||||
2: '关闭'
|
||||
}
|
||||
const classEnumStatus = Object.keys(classStatus).map((item) => ({
|
||||
label: classStatus[item], value: Number(item)
|
||||
}))
|
||||
export default {
|
||||
props: {
|
||||
visible: Boolean,
|
||||
@@ -58,7 +78,6 @@ export default {
|
||||
border: true,
|
||||
columnBtn: false,
|
||||
refreshBtn: false,
|
||||
menu: false,
|
||||
tip: false,
|
||||
selection: true,
|
||||
searchMenuSpan: 6,
|
||||
@@ -85,6 +104,17 @@ export default {
|
||||
}, {
|
||||
label: '创建时间',
|
||||
prop: 'createTime',
|
||||
}, {
|
||||
label: "是否处理",
|
||||
prop: "status",
|
||||
type: "select",
|
||||
dicData: classEnumStatus,
|
||||
search: true,
|
||||
},
|
||||
{
|
||||
label: "处置情况",
|
||||
prop: "disposalSituation",
|
||||
search: true,
|
||||
},
|
||||
]
|
||||
}
|
||||
@@ -136,6 +166,37 @@ export default {
|
||||
this.page.currentPage = 1
|
||||
this.onLoad();
|
||||
},
|
||||
updateRow(row) {
|
||||
const _this = this
|
||||
let h = this.$createElement;
|
||||
this.$prompt("回复处理", // "请核对信息后",
|
||||
{
|
||||
distinguishCancelAndClose: true,
|
||||
confirmButtonText: "完 成",
|
||||
cancelButtonText: "取 消",
|
||||
center: true,
|
||||
inputType: "textarea",
|
||||
inputPlaceholder: "处理内容",
|
||||
beforeClose: async function (action, instance, done) {
|
||||
if (action === 'confirm') {
|
||||
const disposalSituation = instance.inputValue
|
||||
if (!disposalSituation) {
|
||||
this.$message({type: "info", message: "请输入处理内容"});
|
||||
} else {
|
||||
let resData = await disposeEmploymentSurveyManage({id: row.id, disposalSituation, status: 1})
|
||||
if (resData.data.code === 200) {
|
||||
this.$message({type: "success", message: "操作成功"});
|
||||
done()
|
||||
_this.onLoad();
|
||||
}
|
||||
}
|
||||
} else {
|
||||
done()
|
||||
}
|
||||
}
|
||||
}
|
||||
)
|
||||
},
|
||||
onLoad() {
|
||||
if (!this.rowData) return
|
||||
return new Promise(async (resolve, reject) => {
|
||||
|
||||
Reference in New Issue
Block a user