文件
mashangyoujiu/Application/Retail/Controller/RetreatReceivablesController.class.php

147 行
6.5 KiB
PHP
可执行文件

此文件含有模棱两可的 Unicode 字符

此文件含有可能会与其他字符混淆的 Unicode 字符。 如果您是想特意这样的,可以安全地忽略该警告。 使用 Escape 按钮显示他们。

<?php
namespace Retail\Controller;
use Think\Controller;
//[1.7.90]
class RetreatReceivablesController extends BaseController{
public function index()
{
$arr = array(
'exportOperation'=>'/index.php/Retail/RetreatReceivables/export',
'payment'=>'/index.php/Retail/RetreatReceivables/SupplierInfo',
);
$authArr = checkFunction($arr);
$this->assign('authArr',$authArr);
$merchant_id = session("merchant_userinfo")['id'];
$supplier = D("Supplier")->getSelect(array('merchantid'=>$merchant_id,'status'=>1),$page='',$limit='',"id,supplier_name");
$this->assign('supplier',json_encode($supplier));
$this->display();
}
public function RetreatList()
{
$RetreatReceivablesModel = D("RetreatReceivables");
$merchant_id = session("merchant_userinfo")['id'];
$data = I("post.");
$order_number = $data['order_number'];
$add_time = $data['add_time'];
$supplier_id = $data['supplier_id'];
$pay_status = $data['pay_status'];
$type = $data['type'];
$page = $data['page'];
$limit = $data['limit'];
if(!empty($type)){
$where['type'] = $type;
}
if(!empty($order_number)){
$where[$RetreatReceivablesModel::RETREAT_ORDER_NUMBER] = array('like','%'.$order_number."%");
}
if(!empty($supplier_id)){
$where[$RetreatReceivablesModel::SUPPLIER_ID] = $supplier_id;
}
if(!empty($pay_status)){
$where[$RetreatReceivablesModel::PAY_STATUS] = $pay_status;
}
if(!empty($add_time)){
$start_time = strtotime($add_time[0]);
$end_time = strtotime($add_time[1]);
$where[$RetreatReceivablesModel::RETREAT_TIME] = array('between',array($start_time,$end_time));
}
$where[$RetreatReceivablesModel::MERCHANT_ID] = $merchant_id;
$res = A("Api/Inventory")->MerReceivableList($where,$page,$limit,$fields="*");
$this->ajaxReturn($res);
}
//供货商
public function SupplierInfo()
{
$supplier_id = I("post.supplier_id");
$res = A("Api/Inventory")->MerSupplierInfo($supplier_id);
$this->ajaxReturn($res);
}
//收款操作
public function Collect()
{
$merchant_id = session("merchant_userinfo")['id'];
$operator_id = session("jurisdiction_user")['id'];
$data = I("post.");
$res = A("Api/Inventory")->MerCollect($data,$merchant_id,$operator_id);
if($res['status'] == 1){
//操作日志记录
$source = 0;//请求来源: 0pc系统 1小助手
$type = 3;//平台:1合伙人端 2代理商端 3商户端 4门店端
$request_data = json_encode($_POST);//请求参数 json数据
$desc = '退货应收款-收款';//操作行为描述
action_log($source,$type,$request_data,$desc);
}
$this->ajaxReturn($res);
}
public function export()
{
$RetreatReceivablesModel = D("RetreatReceivables");
$merchant_id = session("merchant_userinfo")['id'];
$data = I("get.");
$order_number = $data['order_number'];
$add_time = $data['add_time'];
$supplier_id = $data['supplier_id'];
$pay_status = $data['pay_status'];
$type = $data['type'];
if(!empty($type)){
$where['type'] = $type;
}
if(!empty($order_number)){
$where[$RetreatReceivablesModel::RETREAT_ORDER_NUMBER] = array('like','%'.$order_number."%");
}
if(!empty($supplier_id)){
$where[$RetreatReceivablesModel::SUPPLIER_ID] = $supplier_id;
}
if(!empty($pay_status)){
$where[$RetreatReceivablesModel::PAY_STATUS] = $pay_status;
}
if(!empty($add_time)){
if(!is_array($add_time)){
$add_time = explode(',', $add_time);
}
$start_time = strtotime($add_time[0]);
$end_time = strtotime($add_time[1]);
$where[$RetreatReceivablesModel::RETREAT_TIME] = array('between',array($start_time,$end_time));
}
$where[$RetreatReceivablesModel::MERCHANT_ID] = $merchant_id;
$RetreatList = $RetreatReceivablesModel->getSelect($where,$page='',$limit='',"*");
if($RetreatList){
foreach ($RetreatList as $key=>&$val){
$val['index'] = $key + 1;
$val[$RetreatReceivablesModel::RETREAT_TIME] = date("Y-m-d H:i:s",$val[$RetreatReceivablesModel::RETREAT_TIME]);
$val[$RetreatReceivablesModel::COLLECT_MONEY] = round($val[$RetreatReceivablesModel::COLLECT_MONEY],2);
$val[$RetreatReceivablesModel::RECEIVED_MONEY] = round($val[$RetreatReceivablesModel::RECEIVED_MONEY],2);
$val['stay_money'] = round($val[$RetreatReceivablesModel::COLLECT_MONEY] - $val[$RetreatReceivablesModel::RECEIVED_MONEY],2);
$val['supplier_name'] = D("Supplier")->getFindField(array('id'=>$val[$RetreatReceivablesModel::SUPPLIER_ID]),"supplier_name");
$val['operator'] = A('Api/Inventory')->OperatorName($val[$RetreatReceivablesModel::OPERATOR_ID]);
switch ($val[$RetreatReceivablesModel::PAY_STATUS]){
case 1:
$val['pay_name'] = "待收款";
break;
case 2:
$val['pay_name'] = "部分收款";
break;
case 3:
$val['pay_name'] = "已收款";
break;
}
}
unset($val);
}
$RetreatList = $RetreatList?$RetreatList:array();
$fileds_name = "退货应收款导出";
$arr = array(
array('index',"序号"),
array('supplier_name',"供货商"),
array("retreat_order_number","退货单"),
array("operator","操作人"),
array("retreat_time","退货时间"),
array("collect_money","应收金额"),
array("received_money","已收金额"),
array("stay_money","待收金额"),
array("pay_name","收款状态"),
);
$str = $fileds_name.",导出日期为".date("Y-m-d H:i:s",time());
getExcel($fileds_name, $arr, $RetreatList, $str);
}
}