/** * 获取认筹单不同模板类型的打印原始数据 * @param $chips * @param $templateType * @return array */ function biz_Print_getChipsData($chips, $templateType) { $user = $chips['user']; if (!is_array($user)) { } $data = array('客户名称' => $chips['cname'], '二维码' => $chips['qrcode'], '客户性别' => $user['Gender'], '证件号码' => $user['CardID'], '手机号码' => $user['MobileTel'], '通讯地址' => $user['Address'], '邮编' => $user['PostCode'], '家庭电话' => $user['HomeTel'], '证件类型' => $user['CardType'], '国籍' => $user['Country'], '空' => '', '零' => '0'); if (empty($data['国籍'])) { $data['国籍'] = '中国'; } $res = biz_getChipsCustomerInfo($chips, true); $data['权益人'] = $res['name']; $data['权益人证件'] = $res['card']; $project = biz_getProject($chips['projguid']); $data['项目名称'] = $project['projname']; $printDate = TIMESTAMP; if ($templateType > 2) { $room = db_getRoomByGUID($chips['roomguid']); $build = db_getBuildingById($room['BldGUID']); $data['楼栋名称'] = $build['BldName']; $data['预售证号'] = $build['PreSaleNo']; $data['预售证日期大写'] = Date2Cn($build['PreSaleDate']); $data['房间名'] = $room['ShowCode']; $data['房间号'] = $room['Room']; $data['定金'] = number_format($chips['premoney'] + $chips['ordermoney'], 2); $data['定金大写'] = Num2Cny($chips['premoney'] + $chips['ordermoney']); } $data['代理公司'] = $chips['agency']; $data['业务员'] = $chips['salesman']; switch ($templateType) { case 1: $data['认筹书编号'] = $chips['ChipsNo']; $data['辅助代理'] = $chips['agencychild']; $intend = explode(',', $chips['intendroom']); $data['具体意向1'] = empty($intend[0]) ? '' : $intend[0]; $data['具体意向2'] = empty($intend[1]) ? '' : $intend[1]; $data['具体意向3'] = empty($intend[2]) ? '' : $intend[2]; $data['备注'] = $chips['remark']; $printDate = $chips['printdate']; break; case 2: //只打印最后一次 $item = biz_getBill($chips['qrcode'], 1, 1); $data['诚意金'] = number_format($item['Money'], 2); $data['诚意金大写'] = Num2Cny($item['Money']); $data['交款人'] = $item['Jkr']; $data['收款人'] = $item['Kpr']; $data['票据批次号'] = $item['BatchNo']; $data['票据编号'] = $item['InvoNo']; $printDate = $item['createtime']; break; case 3: $item = biz_getBill($chips['qrcode'], 2, 1); $data['交款人'] = $item['Jkr']; $data['收款人'] = $item['Kpr']; $data['票据批次号'] = $item['BatchNo']; $data['票据编号'] = $item['InvoNo']; $printDate = $item['createtime']; break; case 4: $data['建筑面积'] = $room['BldArea']; $data['套内面积'] = $room['TnArea']; $data['建筑单价'] = number_format($room['Price'], 2); $data['套内单价'] = number_format($room['TnPrice'], 2); $data['价格'] = number_format($room['Total'], 2); $data['成交价'] = number_format($room['RoomTotal'], 2); $data['成交价大写'] = Num2Cny($room['RoomTotal']); $data['折扣'] = $room['DiscntValue']; $data['认购书编号'] = $chips['ProtocolNO']; $pay = biz_unserializer($project, 'payform'); $data['付款方式'] = $pay['Payform']['PayformName']; $sql = " select * from " . tablename('s_Fee') . " where TradeGUID =:qrcode "; $fees = pdo_fetchall($sql, array(':qrcode' => $chips['qrcode']), 'ItemName'); if (isset($fees['首期'])) { $data['首期房款日期'] = date('Y年m月d日', strtotime($fees['首期']['lastDate'])); $data['首期房款金额'] = number_format($fees['首期']['Amount'], 2); $data['首期房款百分比'] = $fees['首期']['Rate']; $data['定金+首期'] = number_format($fees['首期']['Amount'] + $chips['shouldpay'], 2); } if (isset($fees['银行按揭'])) { $data['按揭金额'] = number_format($fees['银行按揭']['Amount'], 2); $data['按揭百分比'] = $fees['银行按揭']['Rate']; } if (isset($fees['维修基金'])) { $data['维修基金'] = number_format($fees['维修基金']['Amount'], 2); } $data['备注'] = $chips['remark']; $printDate = $chips['QSDate']; break; } $date = getdate($printDate); $data['打印日期'] = date('Y年m月d日', $printDate); $data['打印日期-年'] = $date['year']; $data['打印日期-月'] = $date['mon']; $data['打印日期-日'] = $date['mday']; return $data; }
function erp_Write_Customer($chips) { $write = false; $project = biz_getProject($chips['projguid']); $fields = array('CstGUID', 'CstName', 'CstType', 'KhFl', 'CardID', 'OfficeTel', 'HomeTel', 'MobileTel', 'PostCode', 'Address', 'CstType', 'Gender', 'CardType', 'WorkAddr', 'Country', 'CompanyPhone', 'signguid'); //要检查客户是否已录入 $info = biz_getChipsCustomerInfo($chips); $list = explode(',', $info['guid']); foreach ($list as $cid) { $customer = biz_getCustomerInfo(array('CstGUID' => $cid)); if (empty($customer['erp'])) { //$customer['CreatedBy']=$chips['creator']; $customer['CstType'] = '个人'; //$customer['KhFl']='普通客户'; $customer['signguid'] = $chips['projguid']; $write = MsSql()->insertObject('p_Customer', array_elements($fields, $customer)); // 生成CstAttach(客户项目对应表) } $exist = MsSql()->fetch('select * from p_CstAttach where ' . " CstGUID='{$cid}' and ProjGUID='{$chips['projguid']}'"); if ($write && empty($exist)) { $attach = array('CstAttachGUID' => GUID(), 'CstGUID' => $cid, 'ProjGUID' => $chips['projguid'], 'BUGUID' => $project['BUGUID'], 'signguid' => $chips['projguid']); $write = MsSql()->insertObject('p_CstAttach', $attach); if ($write === false) { logging('写入p_CstAttach出错', $cid); } } } return $write; }
function biz_getPayFromDetail($projGUID) { $project = biz_getProject($projGUID, true); $pay = biz_unserializer($project, 'payform'); //$pay['details'] = db_getPaydetail($pay['pay_id']); return $pay; }
<?php if (empty($_GPC['__pid'])) { header('Location: ' . url('project/display')); exit; } if (isset($_GPC['__pid'])) { $_W['project'] = biz_getProject($_GPC['__pid'], true); $_W['pid'] = $_W['project']['id']; } if (empty($_W['project'])) { message('无效的项目信息', url('')); } load()->web('right'); $_W['rights'] = biz_getUserProjectRight(); $m = $_GPC['m']; $m = in_array($m, array_keys($Modules)) ? $m : 'project'; if (in_array($m, array('chips', 'queuing')) && $_W['project']['status'] == 9) { //检查项目状态,是否关闭 message('当前项目已关闭,此功能禁止使用!'); } load()->model('module'); $title = $Modules[$m]['title']; $site = createModuleSite($m); // WeUtility::createModuleSite($m); define('IN_SOLUTION', true); if (!is_error($site)) { $method = 'NavMenu'; $items = @$site->{$method}(); $frames = array('nav' => array('title' => '导航菜单', 'items' => $items['menu'])); $direct = false;
$res['msg'] = $sign['msg']; } else { $res['result'] = true; $sign['sign']['signtime'] = date('Y-m-d H:i:s', $sign['sign']['signtime']); $res['data'] = $sign['sign']; $res['first'] = isset($sign['group']); $res['msg'] = $res['first'] ? '签到成功' : '此单已签到,不能重复签到'; } returnJson($res); } if ($func == 'lucky') { if (empty($params['qrcode'])) { $res['msg'] = '空参数'; returnJson($res); } $project = biz_getProject($params['projguid']); $chips = biz_getChipsByQrcode($params['qrcode']); if (empty($chips) || $chips['projguid'] != $project['projguid']) { $res['msg'] = '无效认筹单'; returnJson($res); } $res['data'] = array_elements(array('cname', 'cardid', 'signed'), $chips); if (empty($chips['lucky'])) { //未中签处理,1、未签处理,2已签到,未叫号、已叫号 if (empty($chips['signed'])) { //获取预设组 $res['msg'] = '此单未签到、未中签!'; $res['result'] = false; } else { $called = biz_getCalledGroupNum($project); if (in_array($chips['signed'], $called)) {
function export_chips($projGUID, $progressFunc) { $res = array('total' => 0, 'update' => 0, 'failed' => 0); $sql = "select * from " . tablename('chips') . " where projguid=:projguid and SyncTime=0 "; $list = pdo_fetchall($sql, array(':projguid' => $projGUID)); $count = count($list); $progress = 0; $index = 0; $showProgress = function () use(&$progress, $count, &$index, $progressFunc) { $index++; $value = intval($index * 5 / $count); if ($value > $progress) { $progress = $value; if (!empty($progressFunc)) { $progressFunc($value); } } }; $project = biz_getProject($projGUID); $payform = biz_unserializer($project, 'payform'); $sql = "select * from " . tablename('s_discountdefine') . " where DiscntGUID=:DiscntGUID and ProjGUID=:ProjGUID "; foreach ($payform['dis_id'] as $id) { $payform['disc_Details'][] = pdo_fetch($sql, array(':DiscntGUID' => $id, ':ProjGUID' => $projGUID)); } foreach ($list as $chips) { $showProgress(); if (!empty($chips['ProtocolNO'])) { $res['total']++; $result = writeChipsToErp($chips, $payform); if ($result) { pdo_update('chips', array('SyncTime' => TIMESTAMP), array('qrcode' => $chips['qrcode'])); $res['update']++; } else { $error = MsSql()->getErrors(); MsSql()->clearError(); //记录出错信息 logging($chips['qrcode'], $error); $res['failed']++; } } } return $res; }
message('认筹单未选房,不能录入订金信息!', $url); } $user_info = $chips['user']; $printed_Bills = biz_getBills($chips['qrcode'], 1, true); $inputBill = biz_getBill($chips['qrcode'], $billType, false); $totalMoney = $chips['ordermoney'] + $chips['premoney']; $enable = $totalMoney >= $chips['shouldpay']; $disableEdit = !isset($_GPC['edit']) || $_GPC['edit'] != 1; if (!$enable && empty($inputBill)) { $inputBill = array('printed' => 0, 'finance' => array(0 => array())); $disableEdit = false; } if (!empty($inputBill)) { $project = $_W['project']; $banks = biz_getBanks($project['BUGUID']); $project = biz_getProject($project['projguid']); $bank = biz_unserializer($project, 'bank'); } if (checksubmit()) { if (empty($inputBill)) { message('认筹单无效数据,不能交款!', $url, 'error'); } //保存中 $updateMoney = biz_getInput2Bill($inputBill); if (empty($inputBill['BillGUID'])) { // 插入票据单相关信息 if ($inputBill['Money'] > 0) { $inputBill['BillGUID'] = GUID(); if (!biz_addBill($chips, $inputBill, 2)) { $updateMoney = false; message('认筹单定金交款,保存数据失败!', $url, 'error');
function App_db_getStats($projGUID) { $project = biz_getProject($projGUID); $set = biz_unserializer($project, 'builds'); $stats = array(); //'renchou'=>0,'qiandao'=>0,'zhongqian'=>0,'crj'=>0,'rengou'=>0,'salearea'=>0,'salemoney'=>0); $sql = " select count(*) as 'renchou', sum(case when signed>0 then 1 else 0 end) as 'qiandao',sum(roomstatus) as xuanfang"; $sql .= " ,sum(lucky) as 'zhongqian' ,sum(premoney) as 'crj'"; $sql .= " ,sum(case when printstatus>=8 then 1 else 0 end) as jiaokuan"; $sql .= " ,sum(case when printstatus>=16 then 1 else 0 end) as rgs"; //认购数 $sql .= " from ims_chips where projguid=:projguid and deleted=0"; $params = array(':projguid' => $projGUID); $data = pdo_fetch($sql, $params); $stats = array_merge($stats, $data); $stats['roomtotal'] = intval($set['roomnum']); //当天时间开始时间 $sql = " select count(*) as salenum,sum(`Total`) as salemoney ,sum(`BldArea`) as salearea FROM ims_p_room where `Status`='认购' and ProjGUID=:projguid "; $data = pdo_fetch($sql, $params); $stats = array_merge($stats, $data); foreach ($stats as $k => $v) { if ($v == null) { $stats[$k] = 0; } } $stats['rgs'] = $stats['salenum']; //格式化金额 // if (isset($stats['crj'])) { // $stats['crj'] = number_format($stats['crj'], 2); // } // if (isset($stats['salemoney'])) { // $stats['salemoney'] = number_format($stats['salemoney'], 2); // } return $stats; }