bug调整

master
Wangxubin 3 years ago
parent 3355a83277
commit 67c3f8beb4

@ -17,6 +17,24 @@ export function phoneLogin(params) {
data: params data: params
}); });
} }
// 修改密码
export function upcashPassword(params){
return service({
url: "/api" + "/demay/ssm/staffLogin/chekeMsg",
method: "post",
data: params
});
}
// 校验验证码
export function chekeMsg(params){
return service({
url: "/api" + "/demay/ssm/staffLogin/chekeMsg",
method: "post",
data: params
});
}
//门店员工手机密码登陆获取token接口 //门店员工手机密码登陆获取token接口
export function phonePassLogin(params) { export function phonePassLogin(params) {
return service({ return service({

@ -45,68 +45,68 @@
<script> <script>
export default { export default {
methods:{ methods:{
loading(){ loading(){
this.$echarts this.$echarts
.init(document.getElementById("projectListCharts")) .init(document.getElementById("projectListCharts"))
.setOption({ .setOption({
backgroundColor: "#eee", backgroundColor: "#eee",
title: { title: {
text: "项目贡献统计", text: "项目贡献统计",
subtext: new Date().toLocaleDateString(), subtext: new Date().toLocaleDateString(),
right: 10, right: 10,
y: 10, y: 10,
}, },
tooltip: { tooltip: {
trigger: "item", trigger: "item",
showDelay: 20, showDelay: 20,
formatter: "{a} <br/>{b} : ¥{c} ({d}%)", formatter: "{a} <br/>{b} : ¥{c} ({d}%)",
padding: 5, padding: 5,
}, },
legend: { legend: {
orient: "vertical", orient: "vertical",
left: "left", left: "left",
itemWidth: 16, itemWidth: 16,
data: [
"个人面部基础护理",
"面部补水保湿",
"面部美白嫩肤",
"火山泥SAP",
"面部理疗",
"洗剪吹",
"烫发",
"做发",
"染发",
"洗发",
],
},
series: [
{
name: "项目贡献",
type: "pie",
radius: "50%",
center: ["55%", "65%"],
data: [ data: [
{ value: 3688, name: "洗剪吹" }, "个人面部基础护理",
{ value: 685, name: "烫发" }, "面部补水保湿",
{ value: 982, name: "做发" }, "面部美白嫩肤",
{ value: 1099, name: "染发" }, "火山泥SAP",
{ value: 1005, name: "个人面部基础护理" }, "面部理疗",
{ value: 1788, name: "面部补水保湿" }, "洗剪吹",
{ value: 1890, name: "面部美白嫩肤" }, "烫发",
{ value: 1355, name: "面部理疗" }, "做发",
{ value: 7900, name: "火山泥SAP" }, "染发",
"洗发",
], ],
emphasis: { },
itemStyle: { series: [
shadowBlur: 10, {
shadowOffsetX: 0, name: "项目贡献",
shadowColor: "rgba(0, 0, 0, 0.5)", type: "pie",
radius: "50%",
center: ["55%", "65%"],
data: [
{ value: 3688, name: "洗剪吹" },
{ value: 685, name: "烫发" },
{ value: 982, name: "做发" },
{ value: 1099, name: "染发" },
{ value: 1005, name: "个人面部基础护理" },
{ value: 1788, name: "面部补水保湿" },
{ value: 1890, name: "面部美白嫩肤" },
{ value: 1355, name: "面部理疗" },
{ value: 7900, name: "火山泥SAP" },
],
emphasis: {
itemStyle: {
shadowBlur: 10,
shadowOffsetX: 0,
shadowColor: "rgba(0, 0, 0, 0.5)",
}, },
}, },
}, },
], ],
}); });
}, },
}, },
mounted(){ mounted(){
this.loading() this.loading()

@ -22,7 +22,7 @@
</el-dropdown> </el-dropdown>
</div> </div>
</div> </div>
<div class="padding-top padding-left padding-right"> <div class="padding">
<transition name="fade" mode="out-in"> <transition name="fade" mode="out-in">
<!-- <keep-alive> --> <!-- <keep-alive> -->
<router-view /> <router-view />
@ -159,6 +159,10 @@ export default {
.fade-enter, .fade-leave-to { .fade-enter, .fade-leave-to {
opacity: 0; opacity: 0;
} }
.padding{
padding: 10px 10px 0 10px;
box-sizing: border-box;
}
.tags { .tags {
overflow: hidden; overflow: hidden;
padding-left: 20px; padding-left: 20px;

@ -31,9 +31,7 @@ export default {
this.resultImg = ""; this.resultImg = "";
}, },
handleGenerate() { handleGenerate() {
this.$refs.esign this.$refs.esign.generate().then((res) => {
.generate()
.then((res) => {
this.resultImg = res; this.resultImg = res;
this.isSHow = true; this.isSHow = true;
this.$emit("imageValue", this.base64ToFile(res, "jpg")); this.$emit("imageValue", this.base64ToFile(res, "jpg"));

@ -7,8 +7,8 @@
<el-table-column align="center" :label="staffTitle"> <el-table-column align="center" :label="staffTitle">
<el-table-column min-width="140" align="center" label="员工"> <el-table-column min-width="140" align="center" label="员工">
<template slot-scope="scope"> <template slot-scope="scope">
<el-select filterable default-first-option v-model="scope.row.label" placeholder="请选择" @change="editChange($event,scope.$index)"> <el-select filterable v-model="scope.row.label" placeholder="请选择" @change="editChange($event,scope.$index)" value-key='label'>
<el-option v-for="item in options" :key="item.id" :label="item.label" :value="item.id"> <el-option v-for="(item) in options" :key="item.label" :label="item.label" :value="item.id">
</el-option> </el-option>
</el-select> </el-select>
</template> </template>
@ -65,6 +65,13 @@ export default {
this.changeStaff(); this.changeStaff();
}, },
editChange(e, index) { editChange(e, index) {
console.log('e--->',e)
let idx = this.list.findIndex(item=>item.id === e)
console.log(idx)
if(idx!= -1){ //
this.list[index] = {}
return this.$message.warning({message: "员工已存在",});
}
let row = this.list[index]; let row = this.list[index];
let form = {}; let form = {};
this.options.forEach((item) => { this.options.forEach((item) => {
@ -88,6 +95,7 @@ export default {
}, },
// //
show(form, text) { show(form, text) {
console.log('form->',form,'text->',text)
this.list = []; this.list = [];
this.form = { ...form }; this.form = { ...form };
this.staffText = text; this.staffText = text;
@ -109,6 +117,7 @@ export default {
if (text == "managerList") { if (text == "managerList") {
this.staffTitle = "高管"; this.staffTitle = "高管";
} }
form[text] = form[text].filter(item=>item.id)
this.list = form[text]; this.list = form[text];
this.list.forEach((item) => { this.list.forEach((item) => {
if (item.id) { if (item.id) {
@ -129,7 +138,7 @@ export default {
that.list.indexOf(v) === -1 || that.staffListCopy.indexOf(v) === -1 that.list.indexOf(v) === -1 || that.staffListCopy.indexOf(v) === -1
); );
}); });
this.options = list; // this.options = list;1
}, },
// //
async getData() { async getData() {

@ -50,7 +50,6 @@
<el-input v-model="refundMoney" type="number"></el-input> <el-input v-model="refundMoney" type="number"></el-input>
</div> </div>
</el-form-item><br> </el-form-item><br>
<el-form-item label="补偿金额:" :label-width="formLabelwidth" prop="compensation"> <el-form-item label="补偿金额:" :label-width="formLabelwidth" prop="compensation">
<div class="form-width-ms"> <div class="form-width-ms">
<el-input v-model="compensation" type="number"></el-input> <el-input v-model="compensation" type="number"></el-input>
@ -72,7 +71,7 @@
</div> </div>
</el-form-item> </el-form-item>
<br /> <br />
<el-table style="max-width:1080px;margin-left:30px" max-height="500" :data="refCashLists" :row-class-name="rowClassName" :row-key='getRowKeys' @expand-change="expandSelect" :expand-row-keys="expand" v-if="refCashListsShow" @selection-change="selRoleChangeHand" @row-click="handleRowClick" ref="multipleTable" highlight-current-row row-key="index"> <el-table style="max-width:1080px;margin-left:30px" max-height="500" :data="refCashLists" :row-class-name="rowClassName" :row-key='getRowKeys' @expand-change="expandSelect" :expand-row-keys="expand" v-if="refCashListsShow" @selection-change="selRoleChangeHand" @row-click="handleRowClick" ref="multipleTable" highlight-current-row>
<el-table-column type="expand"> <el-table-column type="expand">
<template slot-scope="scope"> <template slot-scope="scope">
<div class="flex justify-start align-center flex-wrap"> <div class="flex justify-start align-center flex-wrap">
@ -923,6 +922,7 @@ export default {
this.sessionStorageData = JSON.parse( this.sessionStorageData = JSON.parse(
sessionStorage.getItem("sessionStorageData") sessionStorage.getItem("sessionStorageData")
); );
this.getData()
}, },
// //
submit() { submit() {
@ -967,7 +967,6 @@ export default {
item.manageIdentity = this.refund.manageIdentity; item.manageIdentity = this.refund.manageIdentity;
item.manageNumber = this.refund.manageNumber; item.manageNumber = this.refund.manageNumber;
}); });
//console.log(this.multipleSelection);
this.multipleSelection.forEach((item) => { this.multipleSelection.forEach((item) => {
item.memberName = this.refund.memberName; item.memberName = this.refund.memberName;
item.memberId = this.refund.memberId; item.memberId = this.refund.memberId;
@ -1113,9 +1112,11 @@ export default {
}, },
// //
selRoleChangeHand(row) { selRoleChangeHand(row) {
console.log('这里吗--->')
if (this.title != "明细") { if (this.title != "明细") {
} }
this.multipleSelection = row; this.multipleSelection = row;
console.log('multipleSelection--->',this.multipleSelection)
let num = 0; let num = 0;
let sum = 0; let sum = 0;
let compensationNum = 0; let compensationNum = 0;
@ -1483,7 +1484,7 @@ export default {
this.fileData.append("payee", this.payee); this.fileData.append("payee", this.payee);
this.fileData.append("refundNum", this.radiorefValueList.refundNum); this.fileData.append("refundNum", this.radiorefValueList.refundNum);
//console.log(this.multipleSelection); console.log('---->',this.multipleSelection);
this.multipleSelection.forEach((item) => { this.multipleSelection.forEach((item) => {
item.projectId = item.id; item.projectId = item.id;
item.memberName = this.refund.memberName; item.memberName = this.refund.memberName;
@ -1762,6 +1763,7 @@ export default {
this.sessionStorageData = JSON.parse( this.sessionStorageData = JSON.parse(
sessionStorage.getItem("sessionStorageData") sessionStorage.getItem("sessionStorageData")
); );
this.getData()
}, },
watch: { watch: {
refDialogVisible(val, oldVal) { refDialogVisible(val, oldVal) {

@ -12,7 +12,7 @@
<el-form-item v-if=" <el-form-item v-if="
this.sessionStorageList.memberPay == 1 || this.sessionStorageList.memberPay == 2 this.sessionStorageList.memberPay == 1 || this.sessionStorageList.memberPay == 2
" label="签字确认: "> " label="签字确认: ">
<signature style="width: 400px; height: 300px" @imageValue="imageValue" ref="signature"></signature> <signature style="width: 400px; height: 300px" @imageValue='imageValue' ref="signature"></signature>
</el-form-item> </el-form-item>
</el-form> </el-form>
<span slot="footer" class="dialog-footer"> <span slot="footer" class="dialog-footer">
@ -96,20 +96,6 @@ export default {
passKeydown(e) { passKeydown(e) {
this.confirm(); this.confirm();
// let keyCode = e.keyCode;
// if (keyCode === 8 || keyCode === 46) {
// //backspace delete
// let len = this.$refs.passId.value.length;
// if (len === 1) {
// this.$refs.passId.value = "";
// return false;
// }
// if (e.target.selectionStart === 0 && e.target.selectionEnd === len) {
// this.$refs.passId.value = "";
// return false;
// }
// }
// return true;
}, },
// //
show(form) { show(form) {

@ -0,0 +1,196 @@
<template>
<el-dialog
:title="title"
:visible.sync="dialogVisible"
width="30%"
:before-close="handleClose">
<div class="radio">
<el-form ref="form" :model="form" label-width="55px" label-position='left'>
<el-form-item label="修改方式">
<el-radio v-model="radio" label="1"></el-radio>
<el-radio v-model="radio" label="2"></el-radio>
</el-form-item>
</el-form>
</div>
<div class="maxbox" v-if="radio==1">
<div class="box">
<div class="box1" >
<el-form ref="form" :model="form" label-width="55px" label-position='left'>
<el-form-item label="原密码">
<el-input v-model="oldPassword" placeholder="请重新输入原密码" style="width:150px"></el-input>
</el-form-item>
<el-form-item label="新密码">
<el-input type="password" v-model="newPassword" placeholder="请重新输入新密码" style="width:150px"></el-input>
</el-form-item>
<el-form-item label="新密码">
<el-input type="password" v-model="newPassword2" placeholder="请再次输入新密码" style="width:150px"></el-input>
</el-form-item>
</el-form>
</div>
</div>
<div class="bot">
<span slot="footer" class="dialog-footer">
<el-button size="mini" type="primary" plain @click="handleCloseCancel" > </el-button>
<el-button size="mini" type="primary" @click="passwordConfirms" :loading='passwordLoading'> </el-button>
</span>
</div>
</div>
<div class="maxbox" v-if="radio==2">
<div class="box">
<div class="center">
<el-form ref="form" :model="form" label-width="55px" label-position='left'>
<el-form-item label="验证码">
<el-input v-model="inpt" placeholder="请输入验证码" style="width:150px"></el-input>
</el-form-item>
</el-form>
<el-button style="height:0.2rem;margin-left:10px" @click="getCode" :class="{'disabled-style':getCodeBtnDisable}" :disabled="getCodeBtnDisable" type="primary">{{codeBtnWord}}</el-button>
</div>
<div class="center">
<el-form ref="form" :model="form" label-width="55px" label-position='left'>
<el-form-item label="新密码">
<el-input type="password" v-model="password" style="width:150px" placeholder="请输入新密码"></el-input>
</el-form-item>
<el-form-item label="新密码">
<el-input type="password" v-model="password2" style="width:150px" placeholder="请重新输入密码"></el-input>
</el-form-item>
</el-form>
</div>
</div>
<div class="bot">
<span slot="footer" class="dialog-footer">
<el-button size="mini" type="primary" plain @click="handleCloseCancel"> </el-button>
<el-button size="mini" type="primary" @click="confirms" :loading='codeLoading'> </el-button>
</span>
</div>
</div>
</el-dialog>
</template>
<script>
export default {
data () {
return {
form:{},
passwordLoading:false,
codeLoading:false,
oldPassword:"",//
newPassword2:"",
newPassword:"",//
radio:'1',
inpt:"",
password:"",
password2:"",
titleName:2,
dialogVisible:false,
codeBtnWord:'获取验证码',
timer:null,
waitTime:61 //
}
},
computed:{
title(){
return this.radio == '1'?'原密码修改':'验证码修改'
},
//
getCodeBtnDisable:{
get(){
if(this.waitTime == 61){
return false
}
return true
},
// set
set(){}
}
},
methods:{
passwordConfirms(){
this.handleNewPassword()
},
handleNewPassword(){
this.passwordLoading=true
this.$emit('handleNewPassword',this.newPassword)
},
handleCloseCancel(){
this.dialogVisible = false
clearInterval(this.timer)
this.codeBtnWord = '获取验证码'
this.getCodeBtnDisable = false
this.waitTime = 61
Object.assign(this.$data, this.$options.data())
},
handleClose(done){
done()
//
clearInterval(this.timer)
this.codeBtnWord = '获取验证码'
this.getCodeBtnDisable = false
this.waitTime = 61
Object.assign(this.$data, this.$options.data())
},
confirms(){
this.submit()
},
getCode(){
//
this.$emit('getCodeOperate')
// this
let that = this
that.waitTime--
that.getCodeBtnDisable = true
this.codeBtnWord = `${this.waitTime}s 后重新获取`
this.timer = setInterval(function(){
if(that.waitTime>1){
that.waitTime--
that.codeBtnWord = `${that.waitTime}s 后重新获取`
}else{
clearInterval(this.timer)
that.codeBtnWord = '获取验证码'
that.getCodeBtnDisable = false
that.waitTime = 61
}
},1000)
},
submit(){
this.codeLoading = true
this.$emit('handleSubimt',this.password)
}
}
}
</script>
<style scoped>
.bot{
widows: 100%;
text-align: right;
}
.radio{
width: 100%;
margin-bottom: 15px;
}
.box{
height: 130px;
width: 100%;
text-align: center;
}
.center1{
display: flex;
}
.box1{
display: flex;
justify-content: space-between;
align-items: center;
text-align: center;
}
.center{
width: 100%;
display: flex;
}
.el-input{
flex: 1;
}
.el-button.disabled-style {
background-color: #EEEEEE;
color: #CCCCCC;
}
</style>

@ -51,8 +51,8 @@
</template> </template>
</el-table-column> </el-table-column>
<el-table-column show-overflow-tooltip min-width="100" align="center" prop="payType" label="支付类型"></el-table-column> <el-table-column show-overflow-tooltip min-width="100" align="center" prop="payType" label="支付类型"></el-table-column>
<el-table-column show-overflow-tooltip min-width="75" align="center" prop="collectionRechargeAmount" label="卡付金额"></el-table-column> <el-table-column show-overflow-tooltip min-width="75" align="center" prop="rechargeSum" label="卡付金额"></el-table-column>
<el-table-column show-overflow-tooltip min-width="75" align="center" prop="collectionCashAmount" label="现付金额"></el-table-column> <el-table-column show-overflow-tooltip min-width="75" align="center" prop="cashSum" label="现付金额"></el-table-column>
<el-table-column align="center" prop="inputBy" label="录单人" show-overflow-tooltip min-width="80"></el-table-column> <el-table-column align="center" prop="inputBy" label="录单人" show-overflow-tooltip min-width="80"></el-table-column>
<el-table-column align="center" prop="storeName" label="所属门店" show-overflow-tooltip min-width="100"></el-table-column> <el-table-column align="center" prop="storeName" label="所属门店" show-overflow-tooltip min-width="100"></el-table-column>
<el-table-column align="center" label="明细" width="76" fixed="right"> <el-table-column align="center" label="明细" width="76" fixed="right">
@ -122,6 +122,7 @@ export default {
// //
print(row) { print(row) {
this.printForm = row; this.printForm = row;
this.printForm.printDate = new Date(); this.printForm.printDate = new Date();
this.printForm.telephone = JSON.parse( this.printForm.telephone = JSON.parse(
@ -130,8 +131,9 @@ export default {
this.printForm.storeName = JSON.parse( this.printForm.storeName = JSON.parse(
sessionStorage.getItem("storeInfo") sessionStorage.getItem("storeInfo")
).storeName; ).storeName;
console.log('row--->',row)
cashsignature({ cashsignature({
cashNum: row.cashNum,methods cashNum: row.cashNum
}).then((res) => { }).then((res) => {
if (res.code == "000000" && res.data) { if (res.code == "000000" && res.data) {
this.printForm.signature = this.printForm.signature =

@ -17,13 +17,6 @@ export const Mixins = {
this.$set(firstItem,'CardCurrentUse',firstItem.cardConsumeMoney*1 - firstItem.cardSum*1 + firstItem.spendMoney*1) this.$set(firstItem,'CardCurrentUse',firstItem.cardConsumeMoney*1 - firstItem.cardSum*1 + firstItem.spendMoney*1)
// 可用余额 // 可用余额
this.$set(firstItem,'cardOvers',firstItem.CardCurrentUse*1 - firstItem.spendMoney*1) this.$set(firstItem,'cardOvers',firstItem.CardCurrentUse*1 - firstItem.spendMoney*1)
try{
firstItem.cardSum = firstItem.cardSum.toFixed(2) * 1
firstItem.CardCurrentUse = firstItem.CardCurrentUse.toFixed(2) * 1
firstItem.cardOvers = firstItem.cardOvers.toFixed(2) * 1
}catch(err){
}
}) })
} }
return row return row

File diff suppressed because it is too large Load Diff

@ -135,7 +135,7 @@ export default {
components: { perform }, components: { perform },
data() { data() {
return { return {
days: "", days:'',
tableDate: [{}], tableDate: [{}],
month: partten.months, month: partten.months,
pickerOptions: { pickerOptions: {
@ -169,6 +169,12 @@ export default {
}, },
}; };
}, },
created(){
let sDate = this.formatTime(new Date(), "YYYY-MM-DD 00:00:00");
let eDate = this.formatTime(new Date(), "YYYY-MM-DD 23:59:59");
this.days = [sDate, eDate];
this.changeMonth(this.days)
},
methods: { methods: {
// //
exit() { exit() {
@ -253,7 +259,7 @@ export default {
}); });
}, },
changeMonth(res) { changeMonth(res) {
console.log(res); console.log(res)
let date = this.formatTime(res[1], "YYYY-MM-DD 23:59:59"); let date = this.formatTime(res[1], "YYYY-MM-DD 23:59:59");
var form = { startDate: res[0], endDate: date }; var form = { startDate: res[0], endDate: date };
let month = this.formatTime(this.month, "YYYY-MM"); let month = this.formatTime(this.month, "YYYY-MM");

@ -14,27 +14,19 @@
<el-input <el-input
size="medium" size="medium"
style="width:180px;" style="width:180px;"
placeholder="当前页搜索" placeholder="输入姓名或手机号"
v-model="input" v-model="input">
>
<i slot="prefix" class="el-input__icon el-icon-search"></i> <i slot="prefix" class="el-input__icon el-icon-search"></i>
</el-input> </el-input>
<el-button size="mini" type="primary" @click="searchDialog = true" <el-button size="mini" type="primary" @click="searchDialog = true">条件搜索</el-button>
>条件搜索</el-button
>
<el-button <el-button
size="mini" size="mini"
type="info" type="info"
plain plain
@click="getData((refreshtext = true))" @click="getData((refreshtext = true))">刷新</el-button>
>刷新</el-button <el-button size="mini" type="primary" @click="download()"></el-button
>
<el-button size="mini" type="primary" @click="download()"
>下载模板</el-button
>
<el-button size="mini" type="warning" @click="infoDialog = true"
>导入</el-button
> >
<el-button size="mini" type="warning" @click="infoDialog = true">导入</el-button>
<el-button size="mini" type="success" @click="exit()"></el-button> <el-button size="mini" type="success" @click="exit()"></el-button>
</div> </div>
</div> </div>
@ -1129,15 +1121,22 @@ export default {
tableData() { tableData() {
var search = this.input.toString().toLowerCase(); // var search = this.input.toString().toLowerCase(); //
if (search) { if (search) {
return this.pageInfo.tableList.filter(function(dataNews) { // return this.pageInfo.tableList.filter(function(dataNews) {
return Object.keys(dataNews).some(function(key) { // return Object.keys(dataNews).some(function(key) {
return ( // return (
String(dataNews[key]) // String(dataNews[key])
.toLowerCase() // .toLowerCase()
.indexOf(search) > -1 // .indexOf(search) > -1
); // );
}); // });
}); // });
//
return this.pageInfo.tableList.filter((item,index)=>{
item.mobilePhone += ''
if(item.mobilePhone.includes(search)||item.memberName.includes(search)){
return item
}
})
} }
return this.pageInfo.tableList; return this.pageInfo.tableList;
} }

Loading…
Cancel
Save