Commit 42bb9997 authored by liudong1993's avatar liudong1993

1

parent 5b6d4fd0
......@@ -7,7 +7,7 @@
// https://quasar.dev/quasar-cli/quasar-conf-js
/* eslint-env node */
module.exports = function (ctx) {
module.exports = function(ctx) {
return {
// https://quasar.dev/quasar-cli/supporting-ts
supportTS: false,
......@@ -47,8 +47,8 @@ module.exports = function (ctx) {
vueRouterMode: 'hash', // available values: 'hash', 'history'
env: ctx.dev ? {
API: 'http://localhost:5001/api',
// API: 'http://192.168.10.46:8300/api',
//API: 'http://localhost:5001/api',
API: 'http://192.168.10.46:8300/api',
// API: 'https://eduapi.oytour.com/api',
API_ZC: 'http://192.168.10.17:8087/api',
API_SK: 'ws:192.168.10.214:',
......@@ -254,7 +254,7 @@ module.exports = function (ctx) {
// More info: https://quasar.dev/quasar-cli/developing-electron-apps/node-integration
nodeIntegration: true,
extendWebpack( /* cfg */) {
extendWebpack( /* cfg */ ) {
// do something with Electron main process Webpack cfg
// chainWebpack also available besides this extendWebpack
}
......
import request from '../../utils/request'
import request_zc from '../../utils/request_zc'
/*
......
<style scoped>
.wenjuan_Shuru {
position: relative;
}
.SurverDel {
position: absolute;
right: -5px;
top: -5px;
}
</style>
<template>
<q-dialog
v-model="persistent"
content-class="bg-grey-1"
persistent
transition-show="scale"
transition-hide="scale"
>
<q-card style="width: 800px;max-width:800px;">
<q-card-section>
<div class="text-h6">{{addMsg.ID==0?'新增学员':'修改学员'}}</div>
</q-card-section>
<q-card-section class="q-pt-none scroll" style="max-height: 70vh">
<div class="row wrap">
<!-- <q-select filled stack-label option-value="Id" option-label="Name" v-model="addMsg.SurveyType"
:options="platList" label="客户类型" ref="SurveyType" @input="getPlat()" :rules="[val => !!val || '请选择类型']" class="col-12 q-pb-lg" emit-value map-options />
-->
<q-input
filled
v-model="addMsg.Sort"
class="col-12 q-pb-lg"
ref="Sort"
label="学员编号"
:rules="[val => !!val || '请填写排序']"
></q-input>
<div class="col-12 q-pb-lg">
<q-input
filled
v-model="addMsg.StartTime"
mask="####-##-## ##:##:##"
ref="SignStartTime"
label="开始时间"
:rules="[val => !!val || '请选择开始时间']"
>
<template v-slot:append>
<q-icon name="event" class="cursor-pointer">
<q-popup-proxy ref="qDateProxy" transition-show="scale" transition-hide="scale">
<div class="q-gutter-md row items-start">
<q-date
v-model="addMsg.StartTime"
mask="YYYY-MM-DD HH:mm:ss"
@input="date"
/>
<q-time
v-model="addMsg.StartTime"
format24h
mask="YYYY-MM-DD HH:mm:ss"
@input="time"
/>
</div>
<q-btn v-close-popup label="关闭" color="primary" flat style="float:right" />
</q-popup-proxy>
</q-icon>
</template>
</q-input>
</div>
<div class="col-12 q-pb-lg">
<q-input filled v-model="addMsg.EndTime" mask="####-##-## ##:##:##" ref="SignEndTime" label="结束时间" :rules="[val => !!val || '请选择结束时间']">
<template v-slot:append>
<q-icon name="event" class="cursor-pointer">
<q-popup-proxy ref="qDateProxy" transition-show="scale" transition-hide="scale">
<div class="q-gutter-md row items-start">
<q-date
v-model="addMsg.EndTime"
mask="YYYY-MM-DD HH:mm:ss"
@input="endDate"
/>
<q-time
v-model="addMsg.EndTime"
format24h
mask="YYYY-MM-DD HH:mm:ss"
@input="endTime"
/>
</div>
<q-btn v-close-popup label="关闭" color="primary" flat style="float:right" />
</q-popup-proxy>
</q-icon>
</template>
</q-input>
</div>
</div>
</q-card-section>
<q-separator />
<q-card-actions align="right" class="bg-white">
<q-btn label="取消" flat color="grey-10" style="font-weight:400 !important" @click="closeSaveForm" />
<q-btn label="立即提交" color="accent q-px-md" style="font-weight:400 !important" :loading="saveLoading" @click="saveActive" />
</q-card-actions>
</q-card>
</q-dialog>
</template>
<script>
import {
setActivitySurveyGuest,
getActivitySurveyGuestModule
} from '../../api/studentmsg/index'
export default {
props: {
saveObj: {
type: Object,
default: null
},
ID: {
type: String,
default: null
}
},
data() {
return {
persistent: true,
addMsg: {
Id: 0, //新增传0
GuestType: 2, //客户类型(1-小程序用户,2-学员用户)
GuestId: 2644, //学员编号
StartTime: "2022-04-20 00:00:00", //开始时间
EndTime: "2022-04-25 18:00:00", //结束时间
SurveyId: 0 //意见调查表编号
},
platList: [],
dateList: [],
FormTypeList: [],
saveLoading: false
};
},
mounted() {
this.initObj();
},
methods: {
// 选择报名开始时间
date(val) {
this.addMsg.SignStartTime = val;
},
time(val) {
this.addMsg.SignStartTime = val;
},
// 选择报名结束时间
endDate(val) {
this.addMsg.SignEndTime = val;
},
endTime(val) {
this.addMsg.SignEndTime = val;
},
//初始化表单
initObj() {
this.addMsg.SurveyId = this.ID
if (this.saveObj && this.saveObj.ID > 0) {
getActivitySurveyGuestModule({
Id: saveObj.ID
}).then(res => {
this.addMsg = res.data.data;
console.log("11111", res);
})
} else {
this.addMsg.Id = 0;
// this.addMsg.GuestId = 1;
// this.StartTime = '';
// this.EndTime = '';
}
},
//关闭弹窗
closeSaveForm() {
this.$emit("close");
this.persistent = false;
},
saveActive() {
setActivitySurveyGuest(this.addMsg).then(res => {
if (res.data.Id == 0) {
this.$q.notify({
icon: 'iconfont icon-chenggong',
color: 'accent',
timeout: 2000,
message: '数据保存成功!',
position: 'top'
})
this.$emit('close');
this.$emit('success');
} else {
this.$q.notify({
type: 'negative',
position: "top",
message: res.data.message
})
}
})
}
}
};
</script>
\ No newline at end of file
......@@ -287,9 +287,19 @@
<div>
<div class="eventsCalendar_Form">
<div style="text-align:right;margin:12px 20px 8px 0">
<el-date-picker style="width:190px" v-model="date" type="month" size="small"  value-format="yyyy-M-d"
@change="getList()" placeholder="选择日期">
<el-date-picker
style="width:190px"
v-model="date"
type="date"
:clearable="false"
value-format="yyyy-MM-d"
:picker-options="pickerOptions"
:editable="false"
placeholder="选择日期"
@change="getList"
>
</el-date-picker>
</div>
<template>
<el-calendar v-model="date" id="calendar" style="margin-bottom:40px;">
......
......@@ -127,7 +127,7 @@
</div> -->
<q-btn-group
outline
style="position: fixed;top: 75px;right:20px;z-index: 666666;"
style="position: fixed;top: 15px;right:20px;z-index: 666666;"
>
<q-btn
dense
......
This diff is collapsed.
......@@ -58,6 +58,8 @@
</template>
<template v-slot:body-cell-optioned="props">
<q-td :props="props">
<q-btn flat size="xs" icon="iconfont icon-view" color="accent" style="font-weight:400" label="配置学员"
@click="Gochild(props.row)" />
<q-btn flat size="xs" icon="iconfont icon-view" color="accent" style="font-weight:400" label="配置"
@click="GoYijian(props.row)" />
<q-btn flat size="xs" icon="edit" color="accent" style="font-weight:400" label="编辑"
......@@ -248,6 +250,12 @@
this.msg.pageIndex = val;
this.getList();
},
// 跳转到配置学员详情页
Gochild(row){
this.OpenNewUrl('/activity/configurationstudentsList',{
ID: row.ID
});
},
//跳转到意见调查表
GoYijian(row) {
this.OpenNewUrl('/activity/questionnaireList', {
......
......@@ -12,23 +12,23 @@
<!-- @click="addObj(null)" -->
</div>
</template>
<template v-slot:body-cell-IsRequired="props">
<template v-slot:body-cell-IsRequired="props">
<q-td :props="props">
<span v-if="props.row.IsRequired==0"></span>
<span v-if="props.row.IsRequired==1"></span>
</q-td>
</template>
<template v-slot:body-cell-IsShow="props">
<template v-slot:body-cell-IsShow="props">
<q-td :props="props">
<span v-if="props.row.IsShow==0"></span>
<span v-if="props.row.IsShow==1"></span>
</q-td>
</template>
<template v-slot:bottom>
<template v-slot:bottom>
<q-pagination class="full-width justify-end" v-model="msg.pageIndex" color="primary" :max="pageCount"
:input="true" @input="changePage" />
</template>
<template v-slot:body-cell-optioned="props">
<template v-slot:body-cell-optioned="props">
<q-td :props="props">
<q-btn flat size="xs" icon="edit" color="accent" style="font-weight:400" label="编辑"
@click="addObj(props.row)" />
......@@ -36,59 +36,38 @@
@click="delQuestion(props.row)" />
</q-td>
</template>
</q-table>
<wenjuan-form v-if="isShowWenjuan" :save-obj="objOption" :ID="msg.ActivitySurveyId" @close="closeSaveForm" @success="resetSearch"></wenjuan-form>
</div>
</div>
</q-table>
<student-form v-if="isShowWenjuan" :save-obj="objOption" :ID="msg.ActivitySurveyId" @close="closeSaveForm" @success="resetSearch"></student-form>
</div>
</div>
</template>
<script>
import wenjuanForm from '../../components/activity/wenjuan-form'
import studentForm from '../../components/activity/student-from'
import {
getActivitySurveyGuestPage,
removeActivitySurveyGuest
} from '../../api/studentmsg/index'
export default {
meta: {
title: "意见调查表"
},
components: {
wenjuanForm
studentForm
},
data() {
return {
columns: [
{
name: 'ID',
columns: [{
name: 'Id',
label: 'ID',
align: 'left',
field: 'ID'
},
{
name: 'Title',
label: '问题名称',
field: 'Title',
align: 'left'
},
{
name: 'FormTypeStr',
label: '问卷类型',
field: 'FormTypeStr',
align: 'left'
},
{
name: 'IsRequired',
label: '是否必填',
field: 'IsRequired',
align: 'left'
},
{
name: 'IsShow',
label: '是否显示',
field: 'IsShow',
align: 'left'
},
{
name: 'Sort',
label: '排序',
field: 'Sort',
field: 'Id'
}, {
name: 'GuestName',
label: '学员名称',
field: 'GuestName',
align: 'left'
},
{
name: 'optioned',
label: '操作',
......@@ -97,75 +76,44 @@
],
dataList: [],
loading: true,
ShowOpts: [{
label: '不限',
value: '-1'
},
{
label: '是',
value: '0'
msg: {
pageIndex: 1,
pageSize: 12,
rowsPerPage: 12,
SurveyId: 1,
},
{
label: '否',
value: '1'
}
],
msg:{
pageIndex:1,
pageSize:15,
rowsPerPage: 15,
PrizeType:0,
Title:'',
IsShow:'-1',
SurveyType:0,
ActivitySurveyId:1,//活动id
},
platList:[],
pageCount: 0,
isShowWenjuan: false,
objOption: null,
}
},
created() {
},
mounted() {
if(this.$route.query&&this.$route.query.ID){
if (this.$route.query && this.$route.query.ID) {
this.msg.ActivitySurveyId = this.$route.query.ID;
}
this.getPlat();
},
mounted() {
this.getList();
},
methods: {
getPlat(){
this.apipostDS("/api/Survey/GetActivitySurveyGuestPage", {}, res => {
if(res.data.resultCode==1){
this.platList = res.data.data;
let obj = {
Id:0,
Name:'不限'
}
this.platList.unshift(obj);
}else {
this.Info(res.data.message);
}
console.log( '数据信息' + res.data)
})
},
resetSearch() {
this.msg.pageIndex = 1;
this.getList();
},
getList(){
this.loading=true;
this.apipostDS("/api/Survey/GetPageList", this.msg, res => {
this.loading=false;
if(res.data.resultCode==1){
this.dataList = res.data.data.pageData;
this.pageCount = res.data.data.pageCount;
}else {
this.Info(res.data.message);
getList() {
this.loading = true;
getActivitySurveyGuestPage(this.msg).then(res => {
this.loading = false;
if (res.Code == 1) {
this.dataList = res.Data.PageData;
this.pageCount = res.Data.Count
}
})
console.log("res", res);
});
},
addObj(obj) {
if (obj) {
......@@ -175,8 +123,8 @@
}
this.isShowWenjuan = true;
},
//删除问卷
delQuestion(row){
//删除当前行信息
delQuestion(row) {
let that = this;
this.$q.dialog({
title: "提示",
......@@ -191,11 +139,13 @@
focus: true
}
}).onOk(() => {
that.apipostDS(
"/api/Survey/DelSurvey",
{SurveyID:row.ID},
res => {
if (res.data.resultCode == 1) {
removeActivitySurveyGuest({
Id: row.Id
}).then(res => {
this.dataList = '';
this.pageCount = '';
console.log(res + '111111')
if (res.Code == 1) {
that.$q.notify({
icon: 'iconfont icon-chenggong',
color: 'accent',
......@@ -208,15 +158,15 @@
that.$q.notify({
type: 'negative',
position: "top",
message: res.data.message
message: res.data.message,
})
}
})
})
},
);
});
},
closeSaveForm(){
this.isShowWenjuan=false;
closeSaveForm() {
this.isShowWenjuan = false;
},
changePage(val) {
this.msg.pageIndex = val;
......
......@@ -28,23 +28,23 @@
<q-btn color="accent" size="sm" icon="add" label="新增" @click="addObj(null)" />
</div>
</template>
<template v-slot:body-cell-IsRequired="props">
<template v-slot:body-cell-IsRequired="props">
<q-td :props="props">
<span v-if="props.row.IsRequired==0"></span>
<span v-if="props.row.IsRequired==1"></span>
</q-td>
</template>
<template v-slot:body-cell-IsShow="props">
<template v-slot:body-cell-IsShow="props">
<q-td :props="props">
<span v-if="props.row.IsShow==0"></span>
<span v-if="props.row.IsShow==1"></span>
</q-td>
</template>
<template v-slot:bottom>
<template v-slot:bottom>
<q-pagination class="full-width justify-end" v-model="msg.pageIndex" color="primary" :max="pageCount"
:input="true" @input="changePage" />
</template>
<template v-slot:body-cell-optioned="props">
<template v-slot:body-cell-optioned="props">
<q-td :props="props">
<q-btn flat size="xs" icon="edit" color="accent" style="font-weight:400" label="编辑"
@click="addObj(props.row)" />
......@@ -52,10 +52,10 @@
@click="delQuestion(props.row)" />
</q-td>
</template>
</q-table>
<wenjuan-form v-if="isShowWenjuan" :save-obj="objOption" :ID="msg.ActivitySurveyId" @close="closeSaveForm" @success="resetSearch"></wenjuan-form>
</div>
</div>
</q-table>
<wenjuan-form v-if="isShowWenjuan" :save-obj="objOption" :ID="msg.ActivitySurveyId" @close="closeSaveForm" @success="resetSearch"></wenjuan-form>
</div>
</div>
</template>
<script>
import wenjuanForm from '../../components/activity/wenjuan-form'
......@@ -68,100 +68,88 @@
},
data() {
return {
columns: [
{
columns: [{
name: 'ID',
label: 'ID',
align: 'left',
field: 'ID'
},
{
}, {
name: 'Title',
label: '问题名称',
field: 'Title',
align: 'left'
},
{
}, {
name: 'FormTypeStr',
label: '问卷类型',
field: 'FormTypeStr',
align: 'left'
},
{
}, {
name: 'IsRequired',
label: '是否必填',
field: 'IsRequired',
align: 'left'
},
{
}, {
name: 'IsShow',
label: '是否显示',
field: 'IsShow',
align: 'left'
},
{
}, {
name: 'Sort',
label: '排序',
field: 'Sort',
align: 'left'
},
{
}, {
name: 'optioned',
label: '操作',
field: 'TId'
}
],
}],
dataList: [],
loading: true,
ShowOpts: [{
label: '不限',
value: '-1'
},
{
}, {
label: '是',
value: '0'
},
{
}, {
label: '否',
value: '1'
}
],
msg:{
pageIndex:1,
pageSize:15,
}],
msg: {
pageIndex: 1,
pageSize: 15,
rowsPerPage: 15,
PrizeType:0,
Title:'',
IsShow:'-1',
SurveyType:0,
ActivitySurveyId:0,//活动id
PrizeType: 0,
Title: '',
IsShow: '-1',
SurveyType: 0,
ActivitySurveyId: 0, //活动id
},
platList:[],
platList: [],
pageCount: 0,
isShowWenjuan: false,
objOption: null,
}
},
created() {
},
created() {},
mounted() {
if(this.$route.query&&this.$route.query.ID){
if (this.$route.query && this.$route.query.ID) {
this.msg.ActivitySurveyId = this.$route.query.ID;
}
this.getPlat();
this.getList();
},
methods: {
getPlat(){
getPlat() {
this.apipostDS("/api/Survey/GetSurveyTypeEnumList", {}, res => {
if(res.data.resultCode==1){
if (res.data.resultCode == 1) {
this.platList = res.data.data;
let obj = {
Id:0,
Name:'不限'
Id: 0,
Name: '不限'
}
this.platList.unshift(obj);
}else {
} else {
this.Info(res.data.message);
}
})
......@@ -170,14 +158,14 @@
this.msg.pageIndex = 1;
this.getList();
},
getList(){
this.loading=true;
getList() {
this.loading = true;
this.apipostDS("/api/Survey/GetPageList", this.msg, res => {
this.loading=false;
if(res.data.resultCode==1){
this.loading = false;
if (res.data.resultCode == 1) {
this.dataList = res.data.data.pageData;
this.pageCount = res.data.data.pageCount;
}else {
} else {
this.Info(res.data.message);
}
})
......@@ -191,7 +179,7 @@
this.isShowWenjuan = true;
},
//删除问卷
delQuestion(row){
delQuestion(row) {
let that = this;
this.$q.dialog({
title: "提示",
......@@ -207,8 +195,9 @@
}
}).onOk(() => {
that.apipostDS(
"/api/Survey/DelSurvey",
{SurveyID:row.ID},
"/api/Survey/DelSurvey", {
SurveyID: row.ID
},
res => {
if (res.data.resultCode == 1) {
that.$q.notify({
......@@ -230,8 +219,8 @@
);
});
},
closeSaveForm(){
this.isShowWenjuan=false;
closeSaveForm() {
this.isShowWenjuan = false;
},
changePage(val) {
this.msg.pageIndex = val;
......
......@@ -65,7 +65,6 @@
<template>
<el-table ref="filterTable" :data="tableData" v-loading='loading'
:header-cell-style="{backgroundColor:'#f5f6f7', color: '#a8a8b3'}" border style="width: 100%">
<el-table-column prop="BatchName" label="周期"></el-table-column>
<el-table-column v-if="isReturnperiods" prop="TotalMoney" label="累计金额"> </el-table-column>
<el-table-column v-if="isReturnperiods" prop="TotalEmployee" label="个人直客累计金额"> </el-table-column>
......@@ -76,8 +75,8 @@
<el-table-column v-if="isReturnperiods" prop="CreateDate" label="创建时间"> </el-table-column>
<el-table-column v-if="isReturnperiods" label="财务单据">
<template slot-scope="scope">
<template v-if="scope.row.FinanceIdList" v-for="item in scope.row.FinanceIdList">
<a @click="goDetails(item)"
<template v-if="scope.row.FinanceIdList">
<a v-for="(item,index) in scope.row.FinanceIdList" :key="index" @click="goDetails(item)"
style="cursor:pointer;color:blue;text-decoration:underline;display:inline-block;margin-right:10px;">{{item}}</a>
</template>
</template>
......@@ -88,13 +87,12 @@
<el-tooltip class="item" effect="dark" content="查看" placement="top">
<i class="iconfont icon-sousuo" @click="goUrl(scope.row.Id)"></i>
</el-tooltip>
<templat v-if="isReturnperiods">
<template v-if="isReturnperiods">
<el-tooltip class="item" effect="dark" v-if="scope.row.FinanceIds==''||scope.row.FinanceIds==null"
content="生成财务单据" placement="top">
<i class="iconfont icon-add" @click="setCommissionFinanace(scope.row.Id)"></i>
</el-tooltip>
</templat>
</template>
</div>
</template>
</el-table-column>
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment