瀏覽代碼

新增op费用列表

wangh 1 年之前
父節點
當前提交
d7d7f7aadc

+ 310 - 0
src/components/OP/CarTouristGuideGroundId.vue

@@ -0,0 +1,310 @@
+<template>
+    <div>
+        <div class="communal-list">
+            <div>
+
+                <div class="communal-title">
+                    <div>车导地接费用录入</div>
+                </div>
+                <div style="display: flex;justify-content: space-between;">
+
+                    <div style="width: 80%;display: flex;">
+                        <div style="width: 25%;">
+                            <el-select v-model="DiId" placeholder="团组选择" clearable filterable @change="deleSelectChange"
+                                style="width: 100%;">
+                                <el-option v-for="item in delegationInfoList" :key="item.id" :label="item.teamName"
+                                    :value="item.id">
+                                </el-option>
+                            </el-select>
+                        </div>
+                    </div>
+                    <div style="width: 20%">
+                        <el-button type="primary" style="" @click="addIf">新增</el-button>
+                    </div>
+                </div>
+            </div>
+            <div style="margin:10px 0;color:#606266;">
+                <span style="font-weight: bold;font-size:17px;">团队名称:</span>
+                <span style="color:#606266;">{{ delegationInfo.teamName }}&nbsp;&nbsp;&nbsp;</span>
+                <span style="font-weight: bold;font-size:17px;">客户:</span>
+                <span style="color:#606266;">{{ delegationInfo.clientName }}&nbsp;&nbsp;&nbsp; {{
+}}&nbsp;&nbsp;&nbsp;</span>
+                <span style="font-weight: bold;font-size:17px;">出访国家:</span>
+                <span style="color:#606266;">{{ delegationInfo.visitCountry }}&nbsp;&nbsp;&nbsp;</span>
+                <span style="font-weight: bold;font-size:17px;">起止日期:</span>
+                <span style="color:#606266;">{{ delegationInfo.visitStartDate }}—{{ delegationInfo.visitEndDate
+                }}&nbsp;&nbsp;&nbsp;</span>
+                <span style="font-weight: bold;font-size:17px;">天数/人数:</span>
+                <span style="color:#606266;">{{ delegationInfo.visitDays }}天/{{ delegationInfo.visitPNumber }}人</span>
+            </div>
+
+            <template>
+                <el-table :data="tableDatas.slice((currentPage - 1) * pageSize, currentPage * pageSize)" border
+                    style="width: 100%" v-loading="loading" element-loading-text="拼命加载中...">
+                    <el-table-column prop="num" label="序 号" width="55">
+                        <template slot-scope="scope">
+                            {{ (currentPage - 1) * pageSize + scope.$index + 1 }}
+                        </template>
+                    </el-table-column>
+                    <el-table-column prop="area" label="地区	">
+                    </el-table-column>
+                    <el-table-column prop="serviceGuide" label="服务导游">
+                    </el-table-column>
+                    <el-table-column prop="serviceTel" label="导游联系电话">
+                    </el-table-column>
+                    <el-table-column prop="busName" label="Bus名称">
+                    </el-table-column>
+                    <el-table-column prop="busTel" label="Bus联系电话">
+                    </el-table-column>
+                    <el-table-column prop="serviceStartTime" label="服务时间起">
+                    </el-table-column>
+                    <el-table-column prop="serviceEndTime" label="服务时间止">
+                    </el-table-column>
+                    <el-table-column prop="serviceQuotedPrice" label="服务报价">
+                    </el-table-column>
+                    <el-table-column prop="payPercentage" label="付款百分比">
+                    </el-table-column>
+                    <el-table-column prop="payThenMoney" label="此次付款金额">
+                    </el-table-column>
+                    <el-table-column prop="remainingBalance" label="尾款金额">
+                    </el-table-column>
+                    <el-table-column prop="isAuditGM" label="是否审核">
+                        <template slot-scope="isAuditGM">
+                            <span v-if="isAuditGM.row.isAuditGM == 1">已通过</span>
+                            <span v-else-if="isAuditGM.row.isAuditGM == 0">未审核</span>
+                            <span v-else-if="isAuditGM.row.isAuditGM == 2">未通过</span>
+                            <span v-else>自动审核通过</span>
+                        </template>
+                    </el-table-column>
+                    <el-table-column prop="id" label="详细费用">
+                        <template slot-scope="scope">
+                            <a @click="AddDetails(scope.row.id)">填写</a>
+                        </template>
+
+                    </el-table-column>
+                    <el-table-column label="操作">
+                        <template slot-scope="scope">
+                            <el-button size="mini" @click="upDate(scope.$index, scope.row)">编辑</el-button>
+                            <el-button size="mini" type="danger" @click="del(scope.$index, scope.row)">删除</el-button>
+                        </template>
+                    </el-table-column>
+                </el-table>
+            </template>
+            <div class="block">
+                <el-pagination align='center' @size-change="handleSizeChange" @current-change="handleCurrentChange"
+                    :current-page="currentPage" :page-sizes="[10, 12, 15, 20]" :page-size="pageSize"
+                    layout="total, sizes, prev, pager, next" :total="tableDatas.length">
+                </el-pagination>
+            </div>
+        </div>
+    </div>
+</template>
+<script>
+import { el } from '@fullcalendar/core/internal-common';
+export default {
+    data() {
+        return {
+            loading: false,
+            tableDatas: [],
+            tableData: [],
+            currentPage: 1, // 当前页码
+            pageSize: 12,// 每页的数据条数
+            input: '',
+            token: '',
+            userId: 0,
+            DiId: '',
+            VisaSelectList: [],
+            VisaClient: '',
+            delegationInfoList: [],
+            delegationInfo: {},
+        }
+    },
+    methods: {
+        //每页条数改变时触发 选择一页显示多少行
+        handleSizeChange(val) {
+            this.currentPage = 1;
+            this.pageSize = val;
+        },
+        //当前页改变时触发 跳转其他页
+        handleCurrentChange(val) {
+            this.currentPage = val;
+        },
+        //团组下拉框
+        deleSelect() {
+            var url = "/api/Groups/DecreasePaymentsSelect"
+            var that = this
+            this.$axios({
+                method: 'post',
+                url: url,
+                headers: {
+                    Authorization: 'Bearer ' + this.token
+                },
+                data: {
+                    UserId: that.userId,
+                    CTId: 79
+                }
+            }).then(function (res) {
+                if (res.data.code == 200) {
+                    debugger
+                    that.delegationInfoList = res.data.data.groupName;
+                    that.delegationInfo = that.delegationInfoList[0]
+                    that.DiId = that.delegationInfoList[0].id;
+                    that.delegationInfo = that.delegationInfoList[0];
+                    that.QueryCarTouristGuideGroundByDiId()
+                }
+            }).catch(function (error) {
+                that.$message.error("网络错误,请稍后重试");
+            });
+        },
+        deleSelectChange() {
+            if (this.DiId != "") {
+                this.QueryCarTouristGuideGroundByDiId();
+            } else {
+                this.tableDatas = [];
+                this.tableData = [];
+            }
+        },
+        //团组信息绑定
+        QueryCarTouristGuideGroundByDiId() {
+            var url = "/api/Groups/QueryCarTouristGuideGroundByDiId"
+            var that = this
+            this.$axios({
+                method: 'post',
+                url: url,
+                headers: {
+                    Authorization: 'Bearer ' + this.token
+                },
+                data: {
+                    pageIndex: 0,
+                    pageSize: 0,
+                    portType: 1,
+                    diID: that.DiId,
+                }
+            }).then(function (res) {
+                if (res.data.code == 200) {
+                    debugger
+                    that.tableDatas = res.data.data;
+                    that.tableData = that.tableDatas
+                    if (that.tableDatas.length != 0) {
+                        if (that.tableDatas.slice((that.currentPage - 1) * that.pageSize, that.currentPage * that.pageSize).length == 0) {
+                            if (that.currentPage > 1) {
+                                that.currentPage = that.currentPage - 1;
+                            }
+                        }
+                    }
+
+                }
+
+            }).catch(function (error) {
+
+                that.$message.error("网络错误,请稍后重试");
+            });
+        },
+        //填写详细费用
+        deleSelect(id) {
+
+        },
+        upDate(index, row) {
+            this.$router.push({
+                path: "/home/OpVisaPriec",
+                query: {
+                    DiId: this.DiId,
+                    id: row.id
+                }
+            })
+
+        },
+        addIf() {
+            debugger
+            if (this.DiId != 0 && this.DiId != '' && this.DiId != undefined) {
+                this.$router.push({
+                    path: "/home/OpVisaPriec",
+                    query: {
+                        DiId: this.DiId,
+                    }
+                })
+
+            } else {
+                this.$message('请选择团组在进行添加');
+            }
+        },
+        del(index, row) {
+            this.$confirm('此操作将删除该数据, 是否继续?', '提示', {
+                confirmButtonText: '确定',
+                cancelButtonText: '取消',
+                type: 'warning'
+            }).then(() => {
+                var url = "/api/Groups/DelCarTouristGuideGround"
+                var that = this
+                this.$axios({
+                    method: 'post',
+                    url: url,
+                    headers: {
+                        Authorization: 'Bearer ' + this.token
+                    },
+                    data: {
+                        Id: row.id,
+                        DeleteUserId: this.userId
+                    }
+                }).then(function (res) {
+                    console.log(res)
+
+                    if (res.data.code == 200) {
+
+                        that.$message({
+                            message: '删除成功',
+                            type: 'success'
+                        });
+                        that.PostVisaByDiId();
+                    } else {
+                        that.$message.error('删除失败!');
+                    }
+                    that.loading = false
+                }).catch(function (error) {
+                    that.loading = false
+                    that.$message.error("网络错误,请稍后重试");
+                });
+            }).catch(() => {
+                this.$message({
+                    type: 'info',
+                    message: '操作已取消!'
+                });
+            });
+        },
+    },
+    mounted() {
+        this.token = JSON.parse(localStorage.getItem('userinif')).token;
+        this.userId = JSON.parse(localStorage.getItem('userinif')).userInfo.userId
+        this.deleSelect();
+        //this.AirTicketResList()
+    }
+}
+</script>
+<style>
+.communal-list {
+    background-color: #fff;
+    padding: 10px;
+    box-shadow: 0 0 5px #0005;
+    border-radius: 10px;
+}
+
+.communal-title {
+    display: flex;
+    font-size: 17px;
+    font-weight: 600;
+    color: #555;
+    margin-top: 8px;
+    margin-bottom: 10px;
+    justify-content: space-between;
+    align-items: center;
+}
+
+.communal-box {
+    display: flex;
+}
+
+.communal-box>button {
+    margin-left: 10px;
+    padding: 8px 20px;
+}
+</style>

+ 23 - 28
src/components/OP/OpVisaPriec.vue

@@ -90,8 +90,8 @@
                     <div style="width: 25%;">
                         <el-form-item label="客户类型:" prop="passengerType" label-width="160px">
                             <el-select v-model="OpVisaPriceData.passengerType" clearable filterable placeholder="客户类型">
-                                <el-option v-for="item in passengerTypeSelect" :key="item.value" :label="item.label"
-                                    :value="item.value">
+                                <el-option v-for="item in passengerTypeSelect" :key="item.id" :label="item.name"
+                                    :value="item.id">
                                 </el-option>
                             </el-select>
                         </el-form-item>
@@ -315,29 +315,7 @@ export default {
             },
             IsAuditGM: 0,
             VisitDate: '',
-            passengerTypeSelect: [
-                {
-                    value: '客人',
-                    label: '客人',
-                },
-                {
-                    value: '司机',
-                    label: '司机',
-                },
-                {
-                    value: '导游',
-                    label: '导游',
-                },
-                {
-                    value: '公司内部人员',
-                    label: '公司内部人员',
-                },
-                {
-                    value: '司机/导游/公司内部人员',
-                    label: '司机/导游/公司内部人员',
-                },
-
-            ],
+            passengerTypeSelect: [],
             dateFormat: function (value) {
 
                 // 将value转换为Date对象
@@ -463,14 +441,31 @@ export default {
                 },
                 data: {
                     //userId: that.userId,
-                    DataType: 13
+                    DataType: 66
                 }
             }).then(function (res) {
                 if (res.data.code == 200) {
-
+                    debugger
                     that.currencyList = res.data.data;
                 }
             })
+
+            this.$axios({
+                method: 'post',
+                url: url,
+                headers: {
+                    Authorization: 'Bearer ' + this.token
+                },
+                data: {
+                    //userId: that.userId,
+                    DataType: 69
+                }
+            }).then(function (res) {
+                if (res.data.code == 200) {
+
+                    that.passengerTypeSelect = res.data.data;
+                }
+            })
         },
         payChange() {
             this.OpVisaPriceData.ctdId = '';
@@ -537,7 +532,7 @@ export default {
                     that.OpVisaPriceData.visaPrice = VisaInfo.visaPrice;
                     that.OpVisaPriceData.visaCurrency = VisaInfo.visaCurrency;
                     that.OpVisaPriceData.isThird = VisaInfo.isThird;
-                    that.OpVisaPriceData.passengerType = VisaInfo.passengerType;
+                    that.OpVisaPriceData.passengerType = parseInt(VisaInfo.passengerType);
                     that.OpVisaPriceData.visaNumber = VisaInfo.visaNumber;
                     that.OpVisaPriceData.visaFreeNumber = VisaInfo.visaFreeNumber;
                     that.OpVisaPriceData.createUserId = VisaInfo.createUserId;

+ 0 - 270
src/components/Resource/GroundEntry.vue

@@ -1,270 +0,0 @@
-<template>
-    <div>
-        <div class="groundentry-all">
-            <el-dialog title="新增数据" class="btnpd" :visible.sync="dialogFormVisible">
-                <el-form :model="form">
-                    <div class="add-form">
-                        <el-form-item size="medium" label="团队名称" :label-width="formLabelWidth">
-                            <el-select v-model="form.region" placeholder="请选择活动区域">
-                                <el-option label="区域一" value="shanghai"></el-option>
-                                <el-option label="区域二" value="beijing"></el-option>
-                            </el-select>
-                        </el-form-item>
-                        <el-form-item size="medium" label="团 号" :label-width="formLabelWidth">
-                            <el-input v-model="form.name" autocomplete="off"></el-input>
-                        </el-form-item>
-                        <el-form-item size="medium" label="客 户" :label-width="formLabelWidth">
-                            <el-input v-model="form.name" autocomplete="off"></el-input>
-                        </el-form-item>
-                        <el-form-item size="medium" label="出访国家" :label-width="formLabelWidth">
-                            <el-input v-model="form.name" autocomplete="off"></el-input>
-                        </el-form-item>
-                        <el-form-item size="medium" label="地 区" :label-width="formLabelWidth">
-                            <el-input v-model="form.name" autocomplete="off"></el-input>
-                        </el-form-item>
-                        <el-form-item size="medium" label="服务时间起" :label-width="formLabelWidth">
-                            <el-input v-model="form.name" autocomplete="off"></el-input>
-                        </el-form-item>
-                        <el-form-item size="medium" label="服务时间止" :label-width="formLabelWidth">
-                            <el-input v-model="form.name" autocomplete="off"></el-input>
-                        </el-form-item>
-                        <el-form-item size="medium" label="付款标识" :label-width="formLabelWidth">
-                            <el-input v-model="form.name" autocomplete="off"></el-input>
-                        </el-form-item>
-                        <el-form-item size="medium" label="服务类型" :label-width="formLabelWidth">
-                            <el-select v-model="form.region" placeholder="请选择活动区域">
-                                <el-option label="区域一" value="shanghai"></el-option>
-                                <el-option label="区域二" value="beijing"></el-option>
-                            </el-select>
-                        </el-form-item>
-                        <el-form-item size="medium" label="服务公司" :label-width="formLabelWidth">
-                            <el-input v-model="form.name" autocomplete="off"></el-input>
-                        </el-form-item>
-                        <el-form-item size="medium" label="地接导游" :label-width="formLabelWidth">
-                            <el-input v-model="form.name" autocomplete="off"></el-input>
-                        </el-form-item>
-                        <el-form-item size="medium" label="联系电话" :label-width="formLabelWidth">
-                            <el-input v-model="form.name" autocomplete="off"></el-input>
-                        </el-form-item>
-                        <el-form-item size="medium" label="Bus名称" :label-width="formLabelWidth">
-                            <el-input v-model="form.name" autocomplete="off"></el-input>
-                        </el-form-item>
-                        <el-form-item size="medium" label="Bus描述" :label-width="formLabelWidth">
-                            <el-input v-model="form.name" autocomplete="off"></el-input>
-                        </el-form-item>
-                        <el-form-item size="medium" label="联系电话" :label-width="formLabelWidth">
-                            <el-input v-model="form.name" autocomplete="off"></el-input>
-                        </el-form-item>
-                    </div>
-                    <div class="groundentry-remark">
-                        <el-form-item label="服务描述" :label-width="formLabelWidth">
-                            <el-input :rows="3" type="textarea" v-model="form.name"></el-input>
-                        </el-form-item>
-                        <el-form-item label="备注" :label-width="formLabelWidth">
-                            <el-input :rows="3" type="textarea" v-model="form.name"></el-input>
-                        </el-form-item>
-                    </div>
-                </el-form>
-                <div slot="footer" class="dialog-footer">
-                    <el-button type="primary" @click="dialogFormVisible = false">确 定</el-button>
-                    <el-button @click="dialogFormVisible = false">取 消</el-button>
-                </div>
-            </el-dialog>
-            <div class="groundentry-head">
-                <div class="groundentry-head-li">
-                    <label>团组名称:</label>
-                    <el-select v-model="value" filterable placeholder="请选择">
-                        <el-option
-                        v-for="item in options"
-                        :key="item.id"
-                        :label="item.groupName"
-                        :value="item.id">
-                        </el-option>
-                    </el-select>
-                </div>
-                <div class="groundentry-info">
-                    <div class="groundentry-info-li">
-                        <label>团 号:</label>
-                        <span>团 号:</span>
-                    </div>
-                    <div class="groundentry-info-li">
-                        <label>客 户:</label>
-                        <span>客 户:</span>
-                    </div>
-                    <div class="groundentry-info-li">
-                        <label>出访国家:</label>
-                        <span>出访国家:</span>
-                    </div>
-                    <div class="groundentry-info-li">
-                        <label>起止日期:</label>
-                        <span> 起止日期:</span>
-                    </div>
-                    <div class="groundentry-info-li">
-                        <label>天数/人数:</label>
-                        <span>天数/人数:</span>
-                    </div>
-                </div>
-            </div>
-            <div class="addgroundentry-btn">
-                <el-button type="primary" @click="dialogFormVisible = true">新增数据</el-button>
-            </div>
-            <div class="groundentry-table">
-                <el-table
-                :data="tableData"
-                border
-                style="width: 100%">
-                    <el-table-column
-                    label="序号"
-                    type="index"
-                    width="50">
-                    </el-table-column>
-                    <el-table-column
-                    prop="date"
-                    label="地区"
-                    width="180">
-                    </el-table-column>
-                    <el-table-column
-                    prop="date"
-                    label="服务导游"
-                    width="100">
-                    </el-table-column>
-                    <el-table-column
-                    prop="date"
-                    label="导游联系电话"
-                    width="110">
-                    </el-table-column>
-                    <el-table-column
-                    prop="name"
-                    label="Bus名称"
-                    width="100">
-                    </el-table-column>
-                    <el-table-column
-                    prop="name"
-                    label="Bus联系电话"
-                    width="110">
-                    </el-table-column>
-                    <el-table-column
-                    prop="name"
-                    label="服务时间起"
-                    width="100">
-                    </el-table-column>
-                    <el-table-column
-                    prop="name"
-                    label="服务时间止"
-                    width="100">
-                    </el-table-column>
-                    <el-table-column
-                    prop="name"
-                    label="服务报价"
-                    width="100">
-                    </el-table-column>
-                    <el-table-column
-                    prop="name"
-                    label="是否审核"
-                    width="100">
-                    </el-table-column>
-                    <el-table-column
-                    prop="name"
-                    label="详细费用"
-                    width="100">
-                    </el-table-column>
-                    <el-table-column
-                    prop="address"
-                    label="操 作">
-                    </el-table-column>
-              </el-table>
-            </div>
-        </div>
-    </div>
-</template>
-<script>
-export default {
-    data() {
-        return {
-            value:'',
-            options:[],
-            tableData: [{
-                date: '2016-05-02',
-                name: '王小虎',
-                address: '上海市普陀区金沙江路 1518 弄'
-            }, {
-                date: '2016-05-04',
-                name: '王小虎',
-                address: '上海市普陀区金沙江路 1517 弄'
-            }, {
-                date: '2016-05-01',
-                name: '王小虎',
-                address: '上海市普陀区金沙江路 1519 弄'
-            }, {
-                date: '2016-05-03',
-                name: '王小虎',
-                address: '上海市普陀区金沙江路 1516 弄'
-            }],
-            dialogFormVisible: false,
-            formLabelWidth:'120px',
-            form: {
-                name: '',
-                region: '',
-                date1: '',
-                date2: '',
-                delivery: false,
-                type: [],
-                resource: '',
-            desc: ''
-            },
-        }
-    },
-}
-</script>
-<style>
-.groundentry-all{
-    background-color: #fff;
-    padding: 10px;
-    box-shadow: 0 0 5px #0005;
-    border-radius: 10px;
-    height: 100%;
-    min-height: 840px;
-}
-.groundentry-head-li label{
-    color: #606266;
-    font-size: 15px;
-    font-weight: 600;
-}
-.groundentry-head{
-    display: flex;
-    justify-content: space-between;
-}
-.groundentry-info{
-    display: flex;
-    margin-top: 10px;
-}
-.groundentry-info-li label{
-    color: #606266;
-    font-size: 15px;
-    font-weight: 600;
-}
-.groundentry-info-li span{ 
-    color: #606266;
-    font-size: 14px;
-}
-.groundentry-table{
-    margin-top: 10px;
-}
-.addgroundentry-btn{
-    margin-top: 10px;
-    text-align: right;
-}
-.add-form{
-    display: flex;
-    flex-wrap:wrap ;
-}
-.add-form .el-form-item{
-    width: 32%;
-}
-.groundentry-remark .el-textarea__inner{
-    width: 95.5%;
-}
-.btnpd  .el-dialog__footer{
-    padding: 10px 54px 20px;
-}
-</style>>

+ 1 - 1
src/components/Resource/TicketBlackCode.vue

@@ -94,7 +94,7 @@ export default {
         },
         //下拉框数据绑定
         DelegationSelectFun() {
-            var url = "/api/Groups/GetGroupNameList"
+            var url = "/api/Business/GetGroupNameList"
             var that = this
             this.$axios({
                 method: 'post',

+ 6 - 6
src/router/index.js

@@ -78,10 +78,10 @@ import OpTicketBlackCode from '@/components/Resource/OpTicketBlackCode'
 import Payroll from '@/components/Finance/Payroll';
 import VisaPriec from '@/components/OP/VisaPriec';
 import OpVisaPriec from '@/components/OP/OpVisaPriec';
-import GroundEntry from '@/components/Resource/GroundEntry';
 import GroundDetailedfees from '@/components/Resource/GroundDetailedfees';
 import SetWorking from '@/components/system/SetWorking';
 import ThreeStandards from '@/components/OP/ThreeStandards'
+import CarTouristGuideGroundId from '@/components/OP/CarTouristGuideGroundId'
 Vue.use(Router)
 
 export default new Router({
@@ -459,11 +459,6 @@ export default new Router({
           name: 'OpVisaPriec',
           component: OpVisaPriec
         },
-        {
-          path: '/home/GroundEntry',
-          name: 'GroundEntry',
-          component: GroundEntry
-        },
         {
           path: '/home/GroundDetailedfees',
           name: 'GroundDetailedfees',
@@ -479,6 +474,11 @@ export default new Router({
           name: 'ThreeStandards',
           component: ThreeStandards
         },
+        {
+          path: '/home/CarTouristGuideGroundId',
+          name: 'CarTouristGuideGroundId',
+          component: CarTouristGuideGroundId
+        }
       ]
     },
     {