入库时效数据和报表

/**
* 入库时效报表
*/
class Common_Service_PutawaySendReport {

/**
 * @param $start_date
 * @param $end_date
 * @param string $warehouse
 * @param $reRun
 */
public function createPutawayReport($start_date, $end_date, $warehouse, $reRun) {
    try {
        $list['todaySku'] = 0;
        //当天入库的产品总数
        $list['todayQty'] = 0;
        //24小时入库的SKU 和 qty
        $qclSku24Condition = array(
            'warehouse_id' => $warehouse,
            'start_time' => $start_date,
            'end_time' => $end_date,
            'qcl_type' => 6, //上架时间,
        );
        $qclRe = Product_Service_QualityControlLog::getByCondition($qclSku24Condition, array('qco_code', 'qcl_create_time', 'qty', 'container_code', 'receiving_code'));
        $sku24Count = 0;
        $qty24Count = 0;
        $sku48Count = 0;
        $qty48Count = 0;
        $sku72Count = 0;
        $qty72Count = 0;
        $qcNoPass = 0;
        $qty8CountTotal = 0;
        $qty8Count = 0;
        $tmpProduct = array();
        //所有 asn
        $asnList = array();
        //有问题的 asn
        $asnErrList = array();
        //当天包装产品总数
        $list['asr_all_packaging'] = 0;
        //自动包装产品总数
        $list['asr_automaticity_item'] = 0;
        //CSP 产品入库总数
        $asrCSPrate = 0;
        if (!empty($qclRe)) {
            //new一个问题件
            $pbService = new Order_Service_ProblemOrder();
            $pbCondition = array(
                'po_protype' => array(1, 2),
                'po_status' => array(3, 4),
            );
            $customer_id_neq = array('A0200', 'R2036', 'SFCHC', 'SFCXZ');
            foreach ($qclRe as $qclKey => $qclValue) {
                if (!$qclValue['qco_code'] || $qclValue['qco_code'] == '') {
                    continue;
                }
                //如果是测试用户,则跳过
                $qcoRe = Product_Service_QualityControlOrder::getQcoCode($qclValue['qco_code']);
                if (isset($qcoRe['customer_id']) && in_array($qcoRe['customer_id'], $customer_id_neq)) {
                    continue;
                }
                //如果是不良品 则跳过
                $combinat = array(
                    'ref_code' => $qclValue['qco_code'],
                    'product_type' => 2,
                    'putaway_time_start' => $start_date,
                    'putaway_time_end' => $end_date
                );
                $cbRows = Container_Service_ContainerBinding::getByCondition($combinat);
                if (!empty($cbRows)) {
                    $cbFlog = 0;
                    foreach ($cbRows as $cbKey => $cbValue) {
                        if ($cbValue['container_code'] == $qclValue['container_code']) {
                            continue 2;
                        }
                    }
                }
                //asd单合格率 深坑 别挖了
                if (!in_array($qclValue['receiving_code'], $asnList)) {
                    //所有asn 单
                    $asnList[] = $qclValue['receiving_code'];
                }
                $list['todayQty'] += $qclValue['qty'];
                if (isset($qcoRe['tracking_number']) && $qcoRe['tracking_number'] != '') {
                    $rpRe = Product_Service_ReceivingPre::getByValue($qcoRe['tracking_number'], 'rp_tracking_number');
                    if (!empty($rpRe)) {
                        if ($rpRe['exception_status'] == 1 || $qcoRe['exception_status'] == 1) {
                            //问题件
                            if ($rpRe['exception_status'] == 1 && $qcoRe['exception_status'] == 1) {
                                //ASN错误的同时又QC错误
                                if (!in_array($qclValue['receiving_code'], $asnErrList)) {
                                    //有问题的asn单
                                    $asnErrList[] = $qclValue['receiving_code'];
                                }
                                $pbCondition['tracking_number'] = $rpRe['rp_tracking_number'];
                                $pbRe = $pbService->getByCondition($pbCondition);
                                $pbCondition['tracking_number'] = $qclValue['qco_code'];
                                $pbRe2 = $pbService->getByCondition($pbCondition);
                                if (!empty($pbRe)) {
                                    $customer_submit_time = strtotime($pbRe[0]['customer_submit_time']) >= strtotime($pbRe2[0]['customer_submit_time']) ? strtotime($pbRe[0]['customer_submit_time']) : strtotime($pbRe2[0]['customer_submit_time']);
                                    $pbTime = strtotime($qclValue['qcl_create_time']) - $customer_submit_time;
                                    //var_dump($pbTime);
                                    if ($pbTime <= 259200) {           //72小时内入库
                                        if (!in_array($qclValue['qco_code'], $tmpProduct)) {
                                            $sku72Count++;
                                        }
                                        //数量
                                        $qty72Count += $qclValue['qty'];
                                        //var_dump($qty72Count);exit;
                                        if ($pbTime <= 172800) {           //48小时内入库
                                            if (!in_array($qclValue['qco_code'], $tmpProduct)) {
                                                $sku48Count++;
                                            }
                                            //数量
                                            $qty48Count += $qclValue['qty'];
                                            if ($pbTime <= 86400) {            //24小时内入库
                                                if (!in_array($qclValue['qco_code'], $tmpProduct)) {
                                                    $sku24Count++;
                                                }
                                                //数量
                                                $qty24Count += $qclValue['qty'];
                                            }
                                        }
                                    }
                                    $qcNoPass++;
                                    if ($rpRe['rp_qclevel'] == 1) {
                                        //紧急入库
                                        if ($pbTime <= 28800) {
                                            $qty8Count += $qclValue['qty'];
                                        }
                                        $qty8CountTotal += $qclValue['qty'];
                                    }
                                }
                            } else {
                                //QC或ASN错误
                                $pbCondition['tracking_number'] = $rpRe['exception_status'] == 1 ? $rpRe['rp_tracking_number'] : $qclValue['qco_code'];
                                $pbRe = $pbService->getByCondition($pbCondition);
                                if (!empty($pbRe)) {
                                    $pbTime = strtotime($qclValue['qcl_create_time']) - strtotime($pbRe[0]['customer_submit_time']);
                                    if ($pbTime <= 259200) {           //72小时内入库
                                        if (!in_array($qclValue['qco_code'], $tmpProduct)) {
                                            $sku72Count++;
                                        }
                                        //数量
                                        $qty72Count += $qclValue['qty'];
                                        if ($pbTime <= 172800) {           //48小时内入库
                                            if (!in_array($qclValue['qco_code'], $tmpProduct)) {
                                                $sku48Count++;
                                            }
                                            //数量
                                            $qty48Count += $qclValue['qty'];
                                            if ($pbTime <= 86400) {            //24小时内入库
                                                if (!in_array($qclValue['qco_code'], $tmpProduct)) {
                                                    $sku24Count++;
                                                }
                                                //数量
                                                $qty24Count += $qclValue['qty'];
                                            }
                                        }
                                    }
                                    if ($pbRe[0]['po_protype'] == 1) {
                                        if (!in_array($qclValue['receiving_code'], $asnErrList)) {
                                            //有问题的asn单
                                            $asnErrList[] = $qclValue['receiving_code'];
                                        }
                                    } else if ($pbRe[0]['po_protype'] == 2) {
                                        $qcNoPass++;
                                    }
                                    if ($rpRe['rp_qclevel'] == 1) {
                                        //紧急入库
                                        if ($pbTime <= 28800) {
                                            $qty8Count += $qclValue['qty'];
                                        }
                                        $qty8CountTotal += $qclValue['qty'];
                                    }
                                }
                            }
                        } else if ($rpRe['exception_status'] == 0 || $qcoRe['exception_status'] == 0) {
                            //正常件
                            $sku24Time = strtotime($qclValue['qcl_create_time']) - strtotime($rpRe['rp_receiving_time']);
                            //var_dump($sku24Time);
                            if ($sku24Time <= 259200) {           //72小时内入库
                                if (!in_array($qclValue['qco_code'], $tmpProduct)) {
                                    $sku72Count++;
                                }
                                //数量
                                $qty72Count += $qclValue['qty'];
                                if ($sku24Time <= 172800) {           //48小时内入库
                                    if (!in_array($qclValue['qco_code'], $tmpProduct)) {
                                        $sku48Count++;
                                    }
                                    //数量
                                    $qty48Count += $qclValue['qty'];
                                    if ($sku24Time <= 86400) {            //24小时内入库
                                        if (!in_array($qclValue['qco_code'], $tmpProduct)) {
                                            $sku24Count++;
                                        }
                                        //数量
                                        $qty24Count += $qclValue['qty'];
                                    }
                                }
                            }
                            if ($rpRe['rp_qclevel'] == 1) {
                                //紧急入库
                                if ($sku24Time <= 28800) {
                                    $qty8Count += $qclValue['qty'];
                                }
                                $qty8CountTotal += $qclValue['qty'];
                            }
                        }
                    }
                }
                if (!in_array($qclValue['qco_code'], $tmpProduct)) {
                    $tmpProduct[] = $qclValue['qco_code'];
                    $list['todaySku'] ++;
                }
                //当天包装产品总数
                $spoId = Special_Service_SpecialProjectOrder::getBySpoRefCode($qclValue['qco_code']);
                if ($spoId && $spoId['spo_code']) {
                    $combination = array(
                        "spo_code" => $spoId['spo_code'],
                        "warehouse_id" => $warehouse,
                    );
                    $spackageIds = Special_Service_SpecialProjectPackage::getByLeftJoinCondition($combination, "*");
                    if ($spackageIds) {
                        foreach ($spackageIds as $key => $value) {
                            if ($qclValue['qty'] > 5) {
                                $list['asr_all_packaging'] += $qclValue['qty'];
                            }
                            //自动包装产品总数
                            if ($value['pp_category'] == 1) {
                                $list['asr_automaticity_item'] += $qclValue['qty'];
                            }
                        }
                    }
                }
                //CSP 产品入库总数
                $receivingId = Product_Service_Receiving::getByCondition($qclValue['reciving_code']);
                if ($receivingId && $receivingId['plat_from'] == "CSP") {
                    $asrCSPrate += $qclValue['qty'];
                }
            }
        }
        //24小时入库SKU
        $list['sku24Count'] = $sku24Count;
        //24小时入库QTY
        $list['qty24Count'] = $qty24Count;
        //48小时入库SKU
        $list['sku48Count'] = $sku48Count;
        //48小时入库QTY
        $list['qty48Count'] = $qty48Count;
        //72小时入库SKU
        $list['sku72Count'] = $sku72Count;
        //72小时入库QTY
        $list['qty72Count'] = $qty72Count;
        //asn及格率
        count($asnList) == 0 ? $list['asnPass'] = 0 : $list['asnPass'] = number_format(100 * (count($asnList) - count($asnErrList)) / count($asnList), 2);
        //QC及格率
        $list['todaySku'] == 0 ? $list['qcPass'] = 0 : $list['qcPass'] = number_format(100 * ($list['todaySku'] - $qcNoPass) / $list['todaySku'], 2);
        //24小时入库及时率
        $list['todayQty'] == 0 ? $list['qty24Pass'] = 0 : $list['qty24Pass'] = number_format(100 * $list['qty24Count'] / $list['todayQty'], 2);
        //48小时入库及时率
        $list['todayQty'] == 0 ? $list['qty48Pass'] = 0 : $list['qty48Pass'] = number_format(100 * $list['qty48Count'] / $list['todayQty'], 2);
        //72小时入库及时率
        $list['todayQty'] == 0 ? $list['qty72Pass'] = 0 : $list['qty72Pass'] = number_format(100 * $list['qty72Count'] / $list['todayQty'], 2);

        //8小时优先入库及时率
        //当天入库的产品总数(优先)
        $qty8CountTotal == 0 ? $list['qty8Pass'] = 0 : $list['qty8Pass'] = number_format(100 * $qty8Count / $qty8CountTotal, 2);
        //CSP 产品入库占比率
        $list['todayQty'] == 0 ? $list['asr_csp_rate'] = 0 : $list['asr_csp_rate'] = number_format(100 * $asrCSPrate / $list['todayQty'], 2);
        //自动包装产品占比率
        $list['asr_all_packaging'] == 0 ? $list['asr_automaticity_rate'] = 0 : $list['asr_automaticity_rate'] = number_format(100 * $list['asr_automaticity_item'] / $list['asr_all_packaging'], 2);
        $addRow = array(
            'asr_date' => $start_date,
            'warehouse_id' => $warehouse,
            'asr_24h_sku' => $list['sku24Count'],
            'asr_24h_item' => $list['qty24Count'],
            'asr_48h_sku' => $list['sku48Count'],
            'asr_48h_item' => $list['qty48Count'],
            'asr_72h_sku' => $list['sku72Count'],
            'asr_72h_item' => $list['qty72Count'],
            'asr_all_sku' => $list['todaySku'],
            'asr_all_item' => $list['todayQty'],
            'asr_asn_rate' => $list['asnPass'],
            'asr_qc_rate' => $list['qcPass'],
            'asr_priority_rate' => $list['qty8Pass'],
            'asr_all_rate' => $list['qty24Pass'],
            'asr_48h_rate' => $list['qty48Pass'],
            'asr_72h_rate' => $list['qty72Pass'],
            'asr_create_time' => date('Y-m-d H:i:s'),
            "asr_all_packaging" => $list['asr_all_packaging'],
            "asr_automaticity_item" => $list['asr_automaticity_item'],
            "asr_csp_rate" => $list['asr_csp_rate'],
            "asr_automaticity_rate" => $list['asr_automaticity_rate'],
        );
        if ($reRun && !empty($aspRe)) {
            Product_Service_AsnSendReport::update($addRow, $aspRe['asr_id']);
            echo '更新成功';
        } else {
            Product_Service_AsnSendReport::add($addRow);
            //echo '插入成功';
        }
    } catch (Exception $e) {
        echo '[' . date('Y-m-d H:is') . ']出现异常,异常信息为:' . $e->getMessage() . '\r\n';
    }
}

public static function putawaySendMail($start_date, $end_date, $warehouse = '1') {
    $config = Common_Service_Config::getByAttribute('PUTAWAY_SEND_REPORT', $warehouse);
    if (!$config || $config['config_value'] == '')
        throw new Exception('请配置PUTAWAY_SEND_REPORT项');
    $mailUser = explode(';', $config['config_value']);
    $weekArray = array("星期日", "星期一", "星期二", "星期三", "星期四", "星期五", "星期六");
    $aspCondition = array(
        'start_date' => date('Y-m-01', strtotime($start_date)),
        'end_date' => date('Y-m-d', strtotime($end_date)),
        'warehouse_id' => $warehouse,
    );
    $aspRe = Product_Service_AsnSendReport::getByCondition($aspCondition, '*', array('asr_date'));
    $content = "月份,,24小时内入库的SKU数,24小时内入库的产品数,当天入库的SKU总数,当天入库的产品总数,当天包装产品总数,自动包装产品总数,CSP 产品入库占比率,自动包装产品占比率,ASN单合格率,QC单合格率,优先入库及时率(8H),入库及时率(24H),入库及时率(48H),入库及时率(72H)\n";
    $content1 = '<style>.tab-report{border-top:1px solid #cccccc;border-left:1px solid #cccccc;} .tab-report td, .tab-report th{border-bottom:1px solid #cccccc;border-right:1px solid #cccccc; text-align:center;} .tab-report .yellow{background-color:yellow} .tab-report .blue{background-color:#82A3F8} .tab-report .orange{background-color:#E6F3F9} .tab-report .event-tr{background-color:#E6F3F9}</style>';
    $content1 .= '<table width="100%" border="0" cellspacing="0" cellpadding="0" class="tab-report">';
    $content1 .= '<tr class="orange"><th colspan="2">月份</th><th colspan="1">24小时内入库的SKU数</th><th colspan="1">24小时内入库的产品数</th><th colspan="1">当天入库的SKU总数</th><th>当天入库的产品总数</th><th>当天包装产品总数</th><th>自动包装产品总数</th><th>CSP 产品入库占比率</th><th>自动包装产品占比率</th><th width="85">ASN单合格率</th><th width="85">QC单合格率</th><th width="85">优先入库及时率(8H)</th><th>入库及时率(24H)</th><th>入库及时率(48H)</th><th>入库及时率(72H)</th></tr>';
    if (!empty($aspRe)) {
        $asr_24h_sku_sum = $asr_24h_item_sum = $asr_all_sku_sum = $asr_all_item_sum = $asr_all_packaging_sum = $asr_automaticity_item_sum = $asr_csp_rate_sum = $asr_automaticity_rate_sum = $asr_asn_rate_sum = $asr_qc_rate_sum = $asr_priority_rate_sum = $asr_all_rate_sum = $asr_48h_rate_sum = $asr_72h_rate_sum = 0;
        $day = 0;
        foreach ($aspRe as $aspKey => $aspValue) {
            $content .= $aspValue['asr_date'] . ','
                    . $weekArray[date("w", strtotime($aspValue['asr_date']))] . ','
                    . $aspValue['asr_24h_sku'] . ','
                    . $aspValue['asr_24h_item'] . ','
                    . $aspValue['asr_all_sku'] . ','
                    . $aspValue['asr_all_item'] . ','
                    . $aspValue['asr_all_packaging'] . ","
                    . $aspValue['asr_automaticity_item'] . ","
                    . $aspValue['asr_csp_rate'] . "%,"
                    . $aspValue['asr_automaticity_rate'] . "%,"
                    . $aspValue['asr_asn_rate'] . '%,'
                    . $aspValue['asr_qc_rate'] . '%,'
                    . $aspValue['asr_priority_rate'] . '%,'
                    . $aspValue['asr_all_rate'] . '%,'
                    . $aspValue['asr_48h_rate'] . '%,'
                    . $aspValue['asr_72h_rate'] . '%' . "\n";
            if ($aspValue['asr_all_sku'] != 0) {
                $asr_24h_sku_sum += $aspValue['asr_24h_sku'];
                $asr_24h_item_sum += $aspValue['asr_24h_item'];
                $asr_all_sku_sum += $aspValue['asr_all_sku'];
                $asr_all_item_sum += $aspValue['asr_all_item'];
                $asr_all_packaging_sum += $aspValue['asr_all_packaging'];
                $asr_automaticity_item_sum += $aspValue['asr_automaticity_item'];
                $asr_csp_rate_sum += $aspValue['asr_csp_rate'];
                $asr_automaticity_rate_sum += $aspValue['asr_automaticity_rate'];
                $asr_asn_rate_sum += $aspValue['asr_asn_rate'];
                $asr_qc_rate_sum += $aspValue['asr_qc_rate'];
                $asr_priority_rate_sum += $aspValue['asr_priority_rate'];
                $asr_all_rate_sum += $aspValue['asr_all_rate'];
                $asr_48h_rate_sum += $aspValue['asr_48h_rate'];
                $asr_72h_rate_sum += $aspValue['asr_72h_rate'];
                $day++;
            }
            $content1 .= '<tr class="' . ($aspKey % 2 == 0 ? '' : 'event-tr') . '">'
                    . "<td>{$aspValue['asr_date']}</td>"
                    . "<td>{$weekArray[date("w", strtotime($aspValue['asr_date']))]}</td>"
                    . "<td>{$aspValue['asr_24h_sku']}</td>"
                    . "<td>{$aspValue['asr_24h_item']}</td>"
                    . "<td>{$aspValue['asr_all_sku']}</td>"
                    . "<td>{$aspValue['asr_all_item']}</td>"
                    . "<td> {$aspValue['asr_all_packaging']} </td>"
                    . "<td> {$aspValue['asr_automaticity_item']} </td>"
                    . "<td> {$aspValue['asr_csp_rate']}% </td>"
                    . "<td> {$aspValue['asr_automaticity_rate']}% </td>"
                    . "<td>{$aspValue['asr_asn_rate']}%</td>"
                    . "<td>{$aspValue['asr_qc_rate']}%</td>"
                    . "<td>{$aspValue['asr_priority_rate']}%</td>"
                    . "<td>{$aspValue['asr_all_rate']}%</td>"
                    . "<td>{$aspValue['asr_48h_rate']}%</td>"
                    . "<td>{$aspValue['asr_72h_rate']}%</td>"
                    . '</tr>';
        }
    }
    $day == 0 ? $asr_24h_sku_svg = 0 : $asr_24h_sku_svg = number_format($asr_24h_sku_sum / $day, 2);
    $day == 0 ? $asr_24h_item_svg = 0 : $asr_24h_item_svg = number_format($asr_24h_item_sum / $day, 2);
    $day == 0 ? $asr_all_sku_svg = 0 : $asr_all_sku_svg = number_format($asr_all_sku_sum / $day, 2);
    $day == 0 ? $asr_all_item_svg = 0 : $asr_all_item_svg = number_format($asr_all_item_sum / $day, 2);
    $day == 0 ? $asr_all_packaging_svg = 0 : $asr_all_packaging_svg = number_format($asr_all_packaging_sum / $day, 2);
    $day == 0 ? $asr_automaticity_item_svg = 0 : $asr_automaticity_item_svg = number_format($asr_automaticity_item_sum / $day, 2);
    $day == 0 ? $asr_csp_rate_svg = 0 : $asr_csp_rate_svg = number_format($asr_csp_rate_sum / $day, 2);
    $day == 0 ? $asr_automaticity_rate_svg = 0 : $asr_automaticity_rate_svg = number_format($asr_automaticity_rate_sum / $day, 2);
    $day == 0 ? $asr_asn_rate_svg = 0 : $asr_asn_rate_svg = number_format($asr_asn_rate_sum / $day, 2);
    $day == 0 ? $asr_qc_rate_svg = 0 : $asr_qc_rate_svg = number_format($asr_qc_rate_sum / $day, 2);
    $day == 0 ? $asr_priority_rate_svg = 0 : $asr_priority_rate_svg = number_format($asr_priority_rate_sum / $day, 2);
    $day == 0 ? $asr_all_rate_svg = 0 : $asr_all_rate_svg = number_format($asr_all_rate_sum / $day, 2);
    $day == 0 ? $asr_48h_rate_svg = 0 : $asr_48h_rate_svg = number_format($asr_48h_rate_sum / $day, 2);
    $day == 0 ? $asr_72h_rate_svg = 0 : $asr_72h_rate_svg = number_format($asr_72h_rate_sum / $day, 2);
    $month = date('Y.m', strtotime($start_date));
    $content .= "$month,合计,$asr_24h_sku_sum,$asr_24h_item_sum,$asr_all_sku_sum,$asr_all_item_sum,$asr_all_packaging_sum,$asr_automaticity_item_sum,$asr_csp_rate_svg%,$asr_automaticity_rate_svg%,$asr_asn_rate_svg%,$asr_qc_rate_svg%,$asr_priority_rate_svg%,$asr_all_rate_svg%,$asr_48h_rate_svg%,$asr_72h_rate_svg%\n";
    $content .= ",平均,$asr_24h_sku_svg,$asr_24h_item_svg,$asr_all_sku_svg,$asr_all_item_svg,$asr_all_packaging_svg,$asr_automaticity_item_svg,$asr_csp_rate_svg%,$asr_automaticity_rate_svg%,$asr_asn_rate_svg%,$asr_qc_rate_svg%,$asr_priority_rate_svg%,$asr_all_rate_svg%,$asr_48h_rate_svg%,$asr_72h_rate_svg%\n";
    $content1 .= '<tr>'
            . "<td rowspan=2>{$month}</td>"
            . "<td>合计</td>"
            . "<td>$asr_24h_sku_sum</td>"
            . "<td>$asr_24h_item_sum</td>"
            . "<td>$asr_all_sku_sum</td>"
            . "<td>{$asr_all_item_sum}</td>"
            . "<td> {$asr_all_packaging_sum} </td>"
            . "<td> {$asr_automaticity_item_sum} </td>"
            . "<td> {$asr_csp_rate_svg}% </td>"
            . "<td> {$asr_automaticity_rate_svg}% </td>"
            . "<td>{$asr_asn_rate_svg}%</td>"
            . "<td>{$asr_qc_rate_svg}%</td>"
            . "<td>{$asr_priority_rate_svg}%</td>"
            . "<td>{$asr_all_rate_svg}%</td>"
            . "<td>{$asr_48h_rate_svg}%</td>"
            . "<td>{$asr_72h_rate_svg}%</td>"
            . '</tr>';
    $content1 .= '<tr>'
            . "<td>平均</td>"
            . "<td>{$asr_24h_sku_svg}</td>"
            . "<td>{$asr_24h_item_svg}</td>"
            . "<td>{$asr_all_sku_svg}</td>"
            . "<td>{$asr_all_item_svg}</td>"
            . "<td> {$asr_all_packaging_svg} </td>"
            . "<td> {$asr_automaticity_item_svg} </td>"
            . "<td> {$asr_csp_rate_svg}% </td>"
            . "<td> {$asr_automaticity_rate_svg}% </td>"
            . "<td>{$asr_asn_rate_svg}%</td>"
            . "<td>{$asr_qc_rate_svg}%</td>"
            . "<td>{$asr_priority_rate_svg}%</td>"
            . "<td>{$asr_all_rate_svg}%</td>"
            . "<td>{$asr_48h_rate_svg}%</td>"
            . "<td>{$asr_72h_rate_svg}%</td>"
            . '</tr>';

    $content1 .= '</table>';

    $whRow = Warehouse_Service_Warehouse::getById($warehouse);
    $content = iconv("UTF-8", "GB2312", $content);
    $mail_subject = "CFF" . $whRow['warehouse_name_cn'] . "仓储中心质检入库时效报表-" . date('Y-m-d', strtotime($start_date));
    $mail = Product_Service_ReceivingItem::setupMail();
    $mail->setBodyHtml($content1);
    $mail->addTo($mailUser, $mail_subject);
    $mail->setSubject($mail_subject);
    $at = $mail->createAttachment($content);
    $at->type = 'application/vnd.ms-excel';
    $at->disposition = Zend_Mime::DISPOSITION_INLINE;
    $at->encoding = Zend_Mime::ENCODING_8BIT;
    $at->filename = iconv("UTF-8", "GB2312", $mail_subject . '.csv');
    $path = APPLICATION_PATH . "/../public/file/attachment/" . $mail_subject . '.csv';
    if ($path) {
        $handle = fopen($path, 'a');
        if ($handle) {
            fwrite($handle, $content);
            fclose($handle);
        }
    }
    if ($mail->send()) {
        if (is_array($mailUser)) {
            $mailUser = implode(';', $mailUser);
        }
        $contents = array(
            'eq_to' => $mailUser,
            'eq_subject' => $mail_subject,
            'eq_body' => $content1,
            'eq_attachment' => $path,
            'eq_add_time' => date('Y-m-d H:i:s'),
            'eq_send_time' => date('Y-m-d H:i:s'),
            'eq_status' => 1
        );
        Common_Service_MailRecord::addMailRecord($contents);
    }
}

}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值