|
|
|
@ -38,6 +38,95 @@ class PresidentDepositController extends ThinkController
|
|
|
|
|
$idStrWhere[] = '1<>1';
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
if (!empty(I('pay_confirm_time_start')) && empty(I('pay_confirm_time_end'))) {
|
|
|
|
|
$startTime = strtotime(I('pay_confirm_time_start'));
|
|
|
|
|
$endTime = strtotime(I('pay_confirm_time_end'));
|
|
|
|
|
$tempPromoteIds = M('president_deposit', 'tab_')->where("pay_confirm_time >= {$startTime}")->getField('promote_id', true);
|
|
|
|
|
if (count($tempPromoteIds) > 0) {
|
|
|
|
|
$idStrWhere[] = 'id in (' . implode(',', $tempPromoteIds) . ')';
|
|
|
|
|
} else {
|
|
|
|
|
$idStrWhere[] = '1<>1';
|
|
|
|
|
}
|
|
|
|
|
} else if (empty(I('pay_confirm_time_start')) && !empty(I('pay_confirm_time_end'))) {
|
|
|
|
|
$startTime = strtotime(I('pay_confirm_time_start'));
|
|
|
|
|
$endTime = strtotime(I('pay_confirm_time_end'));
|
|
|
|
|
$tempPromoteIds = M('president_deposit', 'tab_')->where("pay_confirm_time <= {$endTime}")->getField('promote_id', true);
|
|
|
|
|
if (count($tempPromoteIds) > 0) {
|
|
|
|
|
$idStrWhere[] = 'id in (' . implode(',', $tempPromoteIds) . ')';
|
|
|
|
|
} else {
|
|
|
|
|
$idStrWhere[] = '1<>1';
|
|
|
|
|
}
|
|
|
|
|
} else if (!empty(I('pay_confirm_time_start')) && !empty(I('pay_confirm_time_end'))) {
|
|
|
|
|
$startTime = strtotime(I('pay_confirm_time_start'));
|
|
|
|
|
$endTime = strtotime(I('pay_confirm_time_end'));
|
|
|
|
|
$tempPromoteIds = M('president_deposit', 'tab_')->where("pay_confirm_time >= {$startTime} and pay_confirm_time <= {$endTime}")->getField('promote_id', true);
|
|
|
|
|
if (count($tempPromoteIds) > 0) {
|
|
|
|
|
$idStrWhere[] = 'id in (' . implode(',', $tempPromoteIds) . ')';
|
|
|
|
|
} else {
|
|
|
|
|
$idStrWhere[] = '1<>1';
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
if (!empty(I('refund_time_start')) && empty(I('refund_time_end'))) {
|
|
|
|
|
$startTime = strtotime(I('refund_time_start'));
|
|
|
|
|
$endTime = strtotime(I('refund_time_end'));
|
|
|
|
|
$tempPromoteIds = M('president_deposit', 'tab_')->where("refund_time >= {$startTime}")->getField('promote_id', true);
|
|
|
|
|
if (count($tempPromoteIds) > 0) {
|
|
|
|
|
$idStrWhere[] = 'id in (' . implode(',', $tempPromoteIds) . ')';
|
|
|
|
|
} else {
|
|
|
|
|
$idStrWhere[] = '1<>1';
|
|
|
|
|
}
|
|
|
|
|
} else if (empty(I('refund_time_start')) && !empty(I('refund_time_end'))) {
|
|
|
|
|
$startTime = strtotime(I('refund_time_start'));
|
|
|
|
|
$endTime = strtotime(I('refund_time_end'));
|
|
|
|
|
$tempPromoteIds = M('president_deposit', 'tab_')->where("refund_time <= {$endTime}")->getField('promote_id', true);
|
|
|
|
|
if (count($tempPromoteIds) > 0) {
|
|
|
|
|
$idStrWhere[] = 'id in (' . implode(',', $tempPromoteIds) . ')';
|
|
|
|
|
} else {
|
|
|
|
|
$idStrWhere[] = '1<>1';
|
|
|
|
|
}
|
|
|
|
|
} else if (!empty(I('refund_time_start')) && !empty(I('refund_time_end'))) {
|
|
|
|
|
$startTime = strtotime(I('refund_time_start'));
|
|
|
|
|
$endTime = strtotime(I('refund_time_end'));
|
|
|
|
|
$tempPromoteIds = M('president_deposit', 'tab_')->where("refund_time >= {$startTime} and refund_time <= {$endTime}")->getField('promote_id', true);
|
|
|
|
|
if (count($tempPromoteIds) > 0) {
|
|
|
|
|
$idStrWhere[] = 'id in (' . implode(',', $tempPromoteIds) . ')';
|
|
|
|
|
} else {
|
|
|
|
|
$idStrWhere[] = '1<>1';
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
if (!empty(I('pay_accept_time_start')) && empty(I('pay_accept_time_end'))) {
|
|
|
|
|
$startTime = strtotime(I('pay_accept_time_start'));
|
|
|
|
|
$endTime = strtotime(I('pay_accept_time_end'));
|
|
|
|
|
$tempPromoteIds = M('president_deposit', 'tab_')->where("pay_confirm_time >= {$startTime}")->getField('promote_id', true);
|
|
|
|
|
if (count($tempPromoteIds) > 0) {
|
|
|
|
|
$idStrWhere[] = 'id in (' . implode(',', $tempPromoteIds) . ')';
|
|
|
|
|
} else {
|
|
|
|
|
$idStrWhere[] = '1<>1';
|
|
|
|
|
}
|
|
|
|
|
} else if (empty(I('pay_accept_time_start')) && !empty(I('pay_accept_time_end'))) {
|
|
|
|
|
$startTime = strtotime(I('pay_accept_time_start'));
|
|
|
|
|
$endTime = strtotime(I('pay_accept_time_end'));
|
|
|
|
|
$tempPromoteIds = M('president_deposit', 'tab_')->where("pay_confirm_time <= {$endTime}")->getField('promote_id', true);
|
|
|
|
|
if (count($tempPromoteIds) > 0) {
|
|
|
|
|
$idStrWhere[] = 'id in (' . implode(',', $tempPromoteIds) . ')';
|
|
|
|
|
} else {
|
|
|
|
|
$idStrWhere[] = '1<>1';
|
|
|
|
|
}
|
|
|
|
|
} else if (!empty(I('pay_accept_time_start')) && !empty(I('pay_accept_time_end'))) {
|
|
|
|
|
$startTime = strtotime(I('pay_accept_time_start'));
|
|
|
|
|
$endTime = strtotime(I('pay_accept_time_end'));
|
|
|
|
|
$tempPromoteIds = M('president_deposit', 'tab_')->where("pay_accept_time >= {$startTime} and pay_accept_time <= {$endTime}")->getField('promote_id', true);
|
|
|
|
|
if (count($tempPromoteIds) > 0) {
|
|
|
|
|
$idStrWhere[] = 'id in (' . implode(',', $tempPromoteIds) . ')';
|
|
|
|
|
} else {
|
|
|
|
|
$idStrWhere[] = '1<>1';
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
if ($payType !== '') {
|
|
|
|
|
$tempPromoteIds = M('president_deposit', 'tab_')->where(['pay_type' => $payType])->getField('promote_id', true);
|
|
|
|
|
if (count($tempPromoteIds) > 0) {
|
|
|
|
@ -47,7 +136,7 @@ class PresidentDepositController extends ThinkController
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
if (count($idStrWhere) > 0) {
|
|
|
|
|
$query->where(['_string' => implode(' and ', $idStrWhere)]);
|
|
|
|
|
$query->where(['_string' => implode(' and ', array_unique($idStrWhere))]);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
$promotes = [];
|
|
|
|
@ -90,10 +179,10 @@ class PresidentDepositController extends ThinkController
|
|
|
|
|
if ($promote['presidentDeposit']) {
|
|
|
|
|
$presidentDeposit = $promote['presidentDeposit'];
|
|
|
|
|
$promoteBelong = $promote['promoteBelong'];
|
|
|
|
|
if ($presidentDeposit['pay_type'] == 3) {
|
|
|
|
|
if ($presidentDeposit['pay_type'] == PresidentDepositService::PAY_TYPE_NONE) {
|
|
|
|
|
$record['payer'] = '--';
|
|
|
|
|
$record['pay_account'] = '--';
|
|
|
|
|
$record['amount'] = '--';
|
|
|
|
|
$record['amount'] = '无';
|
|
|
|
|
} else {
|
|
|
|
|
$record['payer'] = $presidentDeposit['payer'];
|
|
|
|
|
$record['pay_account'] = $presidentDeposit['pay_account'];
|
|
|
|
@ -104,6 +193,8 @@ class PresidentDepositController extends ThinkController
|
|
|
|
|
$record['create_time'] = $presidentDeposit['create_time'] == 0 ? '--' : date('Y-m-d H:i:s', $presidentDeposit['create_time']);
|
|
|
|
|
$record['verify_time'] = $promoteBelong && $promoteBelong['verify_time'] != 0 ? date('Y-m-d H:i:s', $promoteBelong['verify_time']) : '--';
|
|
|
|
|
$record['pay_confirm_time'] = $presidentDeposit['pay_confirm_time'] == 0 ? '--' : date('Y-m-d H:i:s', $presidentDeposit['pay_confirm_time']);
|
|
|
|
|
$record['refund_time'] = $presidentDeposit['refund_time'] == 0 ? '--' : date('Y-m-d H:i:s', $presidentDeposit['refund_time']);
|
|
|
|
|
$record['pay_accept_time'] = $presidentDeposit['pay_accept_time'] == 0 ? '--' : date('Y-m-d H:i:s', $presidentDeposit['pay_accept_time']);
|
|
|
|
|
$record['status_text'] = $statusList[$presidentDeposit['status']];
|
|
|
|
|
$record['has_record'] = true;
|
|
|
|
|
$record['status'] = $presidentDeposit['status'];
|
|
|
|
@ -117,6 +208,8 @@ class PresidentDepositController extends ThinkController
|
|
|
|
|
$record['create_time'] = '--';
|
|
|
|
|
$record['verify_time'] = '--';
|
|
|
|
|
$record['pay_confirm_time'] = '--';
|
|
|
|
|
$record['refund_time'] = '--';
|
|
|
|
|
$record['pay_accept_time'] = '--';
|
|
|
|
|
$record['status_text'] = '--';
|
|
|
|
|
$record['has_record'] = false;
|
|
|
|
|
$record['status'] = 0;
|
|
|
|
@ -129,15 +222,17 @@ class PresidentDepositController extends ThinkController
|
|
|
|
|
'company_name' => '所属推广公司',
|
|
|
|
|
'account' => '会长账号',
|
|
|
|
|
'company_belong_text' => '工会类型',
|
|
|
|
|
'payer' => '付款人',
|
|
|
|
|
'payer' => '退押金账户名',
|
|
|
|
|
'pay_way_text' => '付款方式',
|
|
|
|
|
'pay_account' => '账号',
|
|
|
|
|
'pay_account' => '退押金账号',
|
|
|
|
|
'pay_type_text' => '押金类型',
|
|
|
|
|
'create_time' => '审批时间',
|
|
|
|
|
'amount' => '押金金额',
|
|
|
|
|
'verify_time' => '会长申请时间',
|
|
|
|
|
'status_text' => '押金状态',
|
|
|
|
|
'pay_confirm_time' => '押金确认时间',
|
|
|
|
|
'refund_time' => '押金退款时间',
|
|
|
|
|
'pay_accept_time' => '押金收到时间',
|
|
|
|
|
];
|
|
|
|
|
|
|
|
|
|
addOperationLog(['op_type'=>3,'key'=>getNowDate(),'op_name'=>'导出会长押金记录','url'=>U('PresidentDeposit/records'),'menu'=>'推广员-结算管理-奖罚记录管理-导出会长押金记录']);
|
|
|
|
@ -149,10 +244,14 @@ class PresidentDepositController extends ThinkController
|
|
|
|
|
|
|
|
|
|
$this->checkListOrCountAuthRestMap($map,[]);
|
|
|
|
|
|
|
|
|
|
// 汇总金额
|
|
|
|
|
$total = M('president_deposit', 'tab_')->field('sum(amount) as totalAmount, sum(if(status = 1, amount, 0)) as confirmedAmount')->find();
|
|
|
|
|
$total['unconfirmedamount'] = $total['totalamount'] - $total['confirmedamount'];
|
|
|
|
|
$page = set_pagination($count, $row);
|
|
|
|
|
if($page) {
|
|
|
|
|
$this->assign('_page', $page);
|
|
|
|
|
}
|
|
|
|
|
$this->assign('total', $total);
|
|
|
|
|
$this->assign('payWays', $payWays);
|
|
|
|
|
$this->assign('payTypes', $payTypes);
|
|
|
|
|
$this->assign('companyTypes', $companyTypes);
|
|
|
|
@ -215,6 +314,9 @@ class PresidentDepositController extends ThinkController
|
|
|
|
|
$payAccount = I('pay_account', '');
|
|
|
|
|
$amount = I('amount', '');
|
|
|
|
|
$payer = I('payer', '');
|
|
|
|
|
$payAcceptTime = I('pay_accept_time', 0) ? strtotime(I('pay_accept_time')): 0;
|
|
|
|
|
$refundTime = I('refund_time', 0) ? strtotime(I('refund_time')): 0;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
$record = M('president_deposit', 'tab_')->where(['promote_id' => $promoteId])->find();
|
|
|
|
|
|
|
|
|
@ -253,6 +355,8 @@ class PresidentDepositController extends ThinkController
|
|
|
|
|
$data['payer'] = $payer;
|
|
|
|
|
$data['create_time'] = time();
|
|
|
|
|
$data['update_time'] = time();
|
|
|
|
|
$data['pay_accept_time'] = $payAcceptTime;
|
|
|
|
|
$data['refund_time'] = $refundTime;
|
|
|
|
|
M('president_deposit', 'tab_')->add($data);
|
|
|
|
|
|
|
|
|
|
addOperationLog(['op_type'=>0,'key'=>$promoteData['account'].'/'.$amount,'op_name'=>'新增会长押金','url'=>U('PresidentDeposit/edit',['id'=>$promoteId]),'menu'=>'推广员-结算单管理-奖罚记录管理-新增会长押金']);
|
|
|
|
@ -283,10 +387,24 @@ class PresidentDepositController extends ThinkController
|
|
|
|
|
} */
|
|
|
|
|
|
|
|
|
|
$data = [];
|
|
|
|
|
|
|
|
|
|
// 切换类型
|
|
|
|
|
if ($payType != $record['pay_type']) {
|
|
|
|
|
$payStatus = 0;
|
|
|
|
|
$data['pay_confirm_time'] = 0;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
if ($payType == PresidentDepositService::PAY_TYPE_NONE) { // 无需押金 直接确认
|
|
|
|
|
$payStatus = 1;
|
|
|
|
|
$data['pay_confirm_time'] = time();
|
|
|
|
|
}
|
|
|
|
|
$data['pay_accept_time'] = $payAcceptTime;
|
|
|
|
|
$data['refund_time'] = $refundTime;
|
|
|
|
|
$data['pay_way'] = $payType == 2 ? 4 : $payWay;
|
|
|
|
|
$data['pay_type'] = $payType;
|
|
|
|
|
$data['pay_account'] = $payAccount;
|
|
|
|
|
$data['amount'] = floatval($amount);
|
|
|
|
|
$data['status'] = $payStatus ?? $record['status'];
|
|
|
|
|
$data['payer'] = $payer;
|
|
|
|
|
$data['update_time'] = time();
|
|
|
|
|
M('president_deposit', 'tab_')->where(['promote_id' => $promoteId])->save($data);
|
|
|
|
@ -321,7 +439,7 @@ class PresidentDepositController extends ThinkController
|
|
|
|
|
$data['payer'] = '';
|
|
|
|
|
$data['create_time'] = time();
|
|
|
|
|
$data['update_time'] = time();
|
|
|
|
|
|
|
|
|
|
$data['status'] = 1;
|
|
|
|
|
if (!$record) {
|
|
|
|
|
$data['promote_id'] = $promoteId;
|
|
|
|
|
M('president_deposit', 'tab_')->add($data);
|
|
|
|
@ -404,12 +522,19 @@ class PresidentDepositController extends ThinkController
|
|
|
|
|
]);
|
|
|
|
|
}
|
|
|
|
|
$checkStatus = true;
|
|
|
|
|
$records = M('president_deposit', 'tab_')->field(['id', 'status'])->where(['promote_id' => ['in', $promoteIds]])->select();
|
|
|
|
|
$records = M('president_deposit', 'tab_')->where(['promote_id' => ['in', $promoteIds]])->select();
|
|
|
|
|
foreach ($records as $record) {
|
|
|
|
|
if ($record['status'] != 0) {
|
|
|
|
|
$checkStatus = false;
|
|
|
|
|
break;
|
|
|
|
|
}
|
|
|
|
|
// 如果不是无需押金,并且没有填写收到押金时间
|
|
|
|
|
if ($record['pay_type'] != PresidentDepositService::PAY_TYPE_NONE && empty($record['pay_accept_time'])) {
|
|
|
|
|
$this->ajaxReturn([
|
|
|
|
|
'status' => 0,
|
|
|
|
|
'message' => '含有待确认收到押金时间记录,不可批量操作'
|
|
|
|
|
]);
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
if (!$checkStatus) {
|
|
|
|
|
$this->ajaxReturn([
|
|
|
|
|