Commit f5d5a175 authored by wangqinghua's avatar wangqinghua

列席信息

parent 6e350e02
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="ProjectTasksOptions" suppressed-tasks="Babel" />
</project>
\ No newline at end of file
......@@ -8057,6 +8057,12 @@
"lower-case": "^1.1.1"
}
},
"node-ensure": {
"version": "0.0.0",
"resolved": "http://r.cnpmjs.org/node-ensure/download/node-ensure-0.0.0.tgz",
"integrity": "sha1-7K52QVDemYYexcgQ/V0Jaxg5Mqc=",
"dev": true
},
"node-forge": {
"version": "0.7.5",
"resolved": "http://r.cnpmjs.org/node-forge/download/node-forge-0.7.5.tgz",
......@@ -8765,6 +8771,16 @@
"sha.js": "^2.4.8"
}
},
"pdfjs-dist": {
"version": "2.0.943",
"resolved": "http://r.cnpmjs.org/pdfjs-dist/download/pdfjs-dist-2.0.943.tgz",
"integrity": "sha1-MvuaLYY99aHYlSGgs82QDBbn7d4=",
"dev": true,
"requires": {
"node-ensure": "^0.0.0",
"worker-loader": "^2.0.0"
}
},
"performance-now": {
"version": "2.1.0",
"resolved": "http://r.cnpmjs.org/performance-now/download/performance-now-2.1.0.tgz",
......@@ -12332,6 +12348,16 @@
"errno": "~0.1.7"
}
},
"worker-loader": {
"version": "2.0.0",
"resolved": "http://r.cnpmjs.org/worker-loader/download/worker-loader-2.0.0.tgz",
"integrity": "sha1-Rf2j73asqBV3GokQc5nuQRm0MKw=",
"dev": true,
"requires": {
"loader-utils": "^1.0.0",
"schema-utils": "^0.4.0"
}
},
"wrap-ansi": {
"version": "2.1.0",
"resolved": "http://r.cnpmjs.org/wrap-ansi/download/wrap-ansi-2.1.0.tgz",
......
......@@ -24,6 +24,7 @@
"eslint-plugin-html": "^5.0.3",
"eslint-plugin-vue": "^5.0.0",
"node-sass": "^4.9.0",
"pdfjs-dist": "^2.0.943",
"sass-loader": "^7.1.0",
"vue-template-compiler": "^2.5.21"
},
......
import req from '../http.js/http';
//获取列席人员列表
export const getAttendInfoList = params =>req('get','/attendInfo/getAttendInfoList',params);
//添加列席人员
export const addAttendInfo = params =>req('post','/attendInfo/addAttendInfo',params);
//修改列席人员信息
export const updateAttendInfo = params =>req('post','/attendInfo/updateAttendInfo',params);
//通过ID删除列席人员信息
export const removeAttendInfoById = params =>req('get','/attendInfo/removeAttendInfoById',params);
<!--添加代码-->
<template>
<div class="code">
<el-dialog :title="title" :visible.sync="dialogFormVisible">
<el-form>
<el-form-item label="名称" :label-width="formLabelWidth">
<el-input v-model="form.name" autocomplete="off"></el-input>
</el-form-item>
</el-form>
<div slot="footer" class="dialog-footer">
<el-button @click="dialogFormVisible = false">取 消</el-button>
<el-button type="primary" @click="submitForm">确 定</el-button>
</div>
</el-dialog>
</div>
</template>
<script>
import {addAttendInfo,updateAttendInfo} from "../api/api"
export default {
name: "attend-dialog",
data() {
return {
id:"",
form:{
name:"",
},
title: "",
dialogFormVisible: false,
formLabelWidth: "100px"
}
},
methods: {
showAddDialog(title) {
this.dialogFormVisible = true
this.title = title;
},
showEditDialog(title,item){
this.dialogFormVisible = true
this.title = title;
this.id = item.id;
this.form.name = item.name
},
submitForm(){
if(this.title == "添加列席"){
addAttendInfo(this.form).then(
(res)=>{
this.dialogFormVisible = false;
this.$message.success('添加成功')
this.$emit('update',res.data)
this.form.name = ""
}
)
}else{
const data = {
id:this.id,
name:this.form.name,
}
updateAttendInfo(data).then(
(res)=>{
this.dialogFormVisible = false;
this.$emit('update',res.data)
this.$message.success('编辑成功')
this.form.name = ""
}
)
}
}
}
}
</script>
<style scoped>
</style>
\ No newline at end of file
......@@ -2,11 +2,12 @@ import axios from 'axios';
import store from '../store/store';
import * as types from '../store/types';
import router from '../router';
import { Message } from 'element-ui';
//axios配置
let instance = axios.create({
timeout:10000,
baseURL:"http://10.10.38.99:8888/coms"
baseURL:'/api/',
timeout:20000,
});
//http request 拦截器
......@@ -25,13 +26,12 @@ instance.interceptors.request.use(
//http reponse拦截器
instance.interceptors.response.use(
response => {
if(response.data.errCode !== 10000){
alert(response.data.errMsg);
if(response.data.code !== 0){
Message.error(response.data.message)
}
return response.data; //只返回服务器返回的data信息
},
error => {
console.log("报错信息");
if (error.response) {
switch (error.response.status) {
case 401:
......
......@@ -22,6 +22,7 @@ const routes = [
{path: '/meetList', name: 'meetList', component: () => import( './views/meetList.vue')},
{path: '/agenda', name: 'agenda', component: () => import( './views/agenda.vue')},
{path: '/meetManage', name: 'meetManage', component: () => import( './views/meetManage.vue')},
{path: '/viewFile', name: 'viewFile', component: () => import( './views/viewFile.vue')},
{
path:'/login',
name:'login',
......
<!--特殊议程-->
<!--列席信息-->
<template>
<div class="attend">
<p class="margin-20-0">当前位置:部务会议程管理 - 代码管理 - 列席信息</p>
<el-row>
<el-col :offset="14" class="text-right" :span="10">
<el-button size="small" plain>添加</el-button>
<el-button @click="addAttend" size="small" plain>添加</el-button>
</el-col>
</el-row>
<div class="margin-20-0">
......@@ -24,65 +24,73 @@
width="200"
label="操作">
<template slot-scope="scope">
<span class="font-size-20">
<i class="el-icon-edit-outline margin-right-10"></i>
<i class="el-icon-view margin-right-10"></i>
<i class="el-icon-delete"></i>
<span class="font-size-20 pointer">
<i @click="handleEdit(scope.row)" class="el-icon-edit-outline margin-right-10"></i>
<i @click="handleDetele(scope.row)" class="el-icon-delete"></i>
</span>
</template>
</el-table-column>
</el-table>
</div>
<attend-dialog ref="attendDialog" @update="getList"></attend-dialog>
</div>
</template>
<script>
import {getAttendInfoList,removeAttendInfoById} from "../api/api"
import AttendDialog from "../components/attendDialog";
export default {
components: {AttendDialog},
name: "attend",
data(){
return {
tableData: [{
date: '2016-05-02',
name: '王小虎',
province: '上海',
city: '普陀区',
address: '上海市普陀区金沙江路 1518 弄',
zip: 200333,
tag: '家'
}, {
date: '2016-05-04',
name: '王小虎',
province: '上海',
city: '普陀区',
address: '上海市普陀区金沙江路 1517 弄',
zip: 200333,
tag: '公司'
}, {
date: '2016-05-01',
name: '王小虎',
province: '上海',
city: '普陀区',
address: '上海市普陀区金沙江路 1519 弄',
zip: 200333,
tag: '家'
}, {
date: '2016-05-03',
name: '王小虎',
province: '上海',
city: '普陀区',
address: '上海市普陀区金沙江路 1516 弄',
zip: 200333,
tag: '公司'
}],
tableData: [],
}
},
mounted(){
this.getList()
},
methods:{
//更改每页条数
handleSizeChange(){
//添加
addAttend(){
this.$refs.attendDialog.showAddDialog("添加列席")
},
handleCurrentChange(){}
//获取信息
getList(){
getAttendInfoList().then(
(res)=>{
this.tableData = res.data
console.log(res);
}
)
},
//删除信息
handleDetele(row){
this.$confirm('确定删除该信息?', '提示', {
confirmButtonText: '确定',
cancelButtonText: '取消',
type: 'warning'
}).then(() => {
const data = {
id:row.id
}
removeAttendInfoById(data).then(
(res)=>{
this.$message.success('删除成功')
this.getList()
}
)
}).catch(() => {
this.$message({
type: 'info',
message: '已取消删除'
});
});
},
//编辑信息
handleEdit(row){
this.$refs.attendDialog.showEditDialog("编辑列席",row)
}
}
}
</script>
......
<template>
<div>
<canvas v-for="page in pages" :id="'the-canvas'+page" :key="page"></canvas>
</div>
</template>
<script>
import PDFJS from 'pdfjs-dist'
let Base64 = require('js-base64').Base64
export default {
data () {
return {
title: '',
pdfDoc: null,
loadding: false,
pages: 0
}
},
methods: {
renderPage (num) {
let _this = this
this.pdfDoc.getPage(num).then(function (page) {
let canvas = document.getElementById('the-canvas' + num)
let ctx = canvas.getContext('2d')
let dpr = window.devicePixelRatio || 1
let bsr = ctx.webkitBackingStorePixelRatio ||
ctx.mozBackingStorePixelRatio ||
ctx.msBackingStorePixelRatio ||
ctx.oBackingStorePixelRatio ||
ctx.backingStorePixelRatio || 1
let ratio = dpr / bsr
var viewport = page.getViewport(screen.availWidth / page.getViewport(1).width)
canvas.width = viewport.width * ratio
canvas.height = viewport.height * ratio
canvas.style.width = viewport.width + 'px'
canvas.style.height = viewport.height + 'px'
ctx.setTransform(ratio, 0, 0, ratio, 0, 0)
var renderContext = {
canvasContext: ctx,
viewport: viewport
}
page.render(renderContext)
if (_this.pages > num) {
_this.renderPage(num + 1)
}
})
},
loadFile (url) {
let _this = this
PDFJS.getDocument(url).then(function (pdf) {
_this.pdfDoc = pdf
_this.pages = _this.pdfDoc.numPages
_this.$nextTick(() => {
_this.renderPage(1)
})
})
}
},
mounted () {
let url = 'http://storage.xuetangx.com/public_assets/xuetangx/PDF/1.xls'
this.loadFile(url)
}
}
</script>
<style scoped>
canvas {
display: block;
border-bottom: 1px solid black;
}
</style>
......@@ -6,7 +6,7 @@ module.exports = {
devServer:{
proxy:{
'/api':{
target:"http://180.168.156.212:4085",
target:"http://10.10.202.50:8080",
changeOrigin:true,
ws:true,
pathRewrite:{
......
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