Commit 3e9c6eed by lixq

Merge branch 'master' of http://gitlib.occloud.net/biao/ZhiNanZhen

# Conflicts:
#	src/cn/compass/handler/CompassHandler.inc
#	src/settings/settings.inc
parents 604c0a97 75c8a641
......@@ -5,3 +5,4 @@ insert into account_mst(login,password,name,contact,role,modules)values('admin12
insert into account_mst(login,password,name,contact,role)values('admin123','admin123','系统管理员','123456','99')
##系统常量表##
insert into system_const_dat(name,title,constant_value)values('ORGNAZATION_RULE','机构认证说明','请输入文本')
##----system_const_dat create
##----system_constant_dat create
DROP TABLE IF EXISTS system_const_dat;
CREATE TABLE IF NOT EXISTS system_const_dat(
DROP TABLE IF EXISTS system_constant_dat;
CREATE TABLE IF NOT EXISTS system_constant_dat(
id bigint unsigned NOT NULL PRIMARY KEY auto_increment,
registration_date timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
name varchar(64) NOT NULL,
......@@ -10,7 +10,7 @@ CREATE TABLE IF NOT EXISTS system_const_dat(
delete_flg tinyint(1) NOT NULL DEFAULT '0'
) ENGINE = INNODB DEFAULT CHARSET=utf8mb4;
Create INDEX system_const_dat_name_idx ON system_const_dat(name);
Create INDEX system_constant_dat_name_idx ON system_constant_dat(name);
##----government_mst create
......
......@@ -104,7 +104,6 @@ define("POPUP_WINDOW_INFO_MIN_WIDTH", 640);
define("POPUP_WINDOW_INFO_MAX_WIDTH", 640);
define("POPUP_WINDOW_INFO_MIN_HEIGHT", 160);
define("POPUP_WINDOW_INFO_MAX_HEIGHT", 480);
// -------------读取mode----------------
define("AIMSLIB_ROOT", COMPASS_ROOT);
define("COMPASS_LIB_ROOT" , COMPASS_ROOT);
......
<?php
// 支付的时候,等待notify_url的结果
require_once ("../user_include.inc");
$ta = new TemplateAction();
if(!$ta->isLogin()) {
response("NG", "请先登录!");
}
// 参数取得
$out_trade_no = ParamUtil::getRequestString("out_trade_no");
ErrorLogger::doOutput("Koala...ajax_check_alipay_order.php....out_trade_no=" . $out_trade_no, 0);
if (empty($out_trade_no)) {
response("NG", "订单不存在!");
}
$param = array();
$param["trade_no"] = $out_trade_no;
$param["delete_flg"] = false;
$user_buy_couse_dat_list = UserBuyCouseDat::getList($param, "id", "desc", 0, 1);
if(!empty($user_buy_couse_dat_list)) {
$user_buy_couse_dat = $user_buy_couse_dat_list[0];
$course_mst = CourseMst::getById($user_buy_couse_dat->course_id);
if(empty($course_mst)) {
response("NG", "数据错误!");
}
$user_buy_couse_dat->course_name = $course_mst->title;
} else {
response("NG", "订单不存在!");
}
//$user_buy_couse_dat->status="WAITING";
response("OK", $user_buy_couse_dat);
function response($status, $data) {
$result = array("status"=>$status, "data"=>$data);
print json_encode($result);
exit;
}
?>
<?php
// 支付的时候,创建订单及返回结果
require_once ("../user_include.inc");
$ta = new TemplateAction();
if(!$ta->isLogin()) {
response("LOGIN", "请先登录!");
}
// 参数取得
$course_id = ParamUtil::getRequestString("course_id");
$price = ParamUtil::getRequestNumber("price");
$pay_type = ParamUtil::getRequestString("pay_type","ZFB");
$course_mst = CourseMst::getById($course_id);
if ($course_mst == null) {
response("ERROR", "课程不存在!");
}
if (!$course_mst->is_valid) {
response("ERROR", "产品已下架!");
}
if ($course_mst->price != $price) {
response("ERROR", "价格错误!");
}
//删除该用户所有未支付订单
$sql = "update user_buy_couse_dat set delete_flg=true where status='WAITING' and user_id='{$ta->user->id}'";
$db = &KoalaDBManager::getInstance();
$db->executeQuery($sql);
// 创建订单
$user_buy_couse_dat = new UserBuyCouseDat();
$user_buy_couse_dat->user_id = $ta->user->id;
$user_buy_couse_dat->pay_type = $pay_type;
$user_buy_couse_dat->trade_no = 'course'. $course_mst->id . strtolower(PasswordMaker::humanChars(6)) . date("YmdHis");
$user_buy_couse_dat->course_id = $course_mst->id;
$user_buy_couse_dat->numbers = 1;
$user_buy_couse_dat->price = $course_mst->price;
$user_buy_couse_dat->status = "WAITING";
$user_buy_couse_dat->save();
$response = array(
"WIDout_pay_type"=>$pay_type,
"WIDout_trade_no"=>$user_buy_couse_dat->trade_no,
"WIDsubject"=>$course_mst->title,
"WIDtotal_amount"=>$user_buy_couse_dat->numbers * $course_mst->price,
"WIDshow_url"=>"http://" . HOST_NAME . "/alipay_return.php?act=cancel",
"WIDbody"=>$course_mst->title
);
response("OK", $response);
function response($status, $message) {
$result = array("status"=>$status, "message"=>$message);
print json_encode($result);
exit;
}
?>
<?php
// 发送短信验证码
require_once ("../user_include.inc");
$ta = new TemplateAction();
if(!$ta->isLogin()) {
print json_encode(array("count"=>0, "html"=>""));
exit;
}
//检索用户收录的单词
$sql = "select a.* from article_dat a, user_favorite_dat u where a.delete_flg=false and u.delete_flg=false and u.data_type='article' and u.user_id='{$ta->user->id}' and u.data_id=a.id order by u.id desc";
error_log("Koala...ajax_get_my_articles.php...sql=" . $sql, 0);
$db = &KoalaDBManager::getInstance();
$article_data_list = $db->executeQuery($sql);
$article_count = count($article_data_list);
$index = 0;
ob_start();
foreach($article_data_list as $tmp) {
$index++;
$article_dat = new ArticleDat($tmp);
?>
<div class="article_item">
<div class="article_row">
<div class="index"><?=$index?>/<?=$article_count?></div>
<div class="title"><?=$article_dat->title?></div>
<?
if(!empty($article_dat->video_url) || !empty($article_dat->mp3)) {
?>
<img src="images/video.png" class="link" onClick="articleDetailMy('<?=$article_dat->id?>');">
<?} else {?>
<img src="images/picture.png" class="link" onClick="articleDetailMy('<?=$article_dat->id?>');">
<?
}
?>
</div>
<div class="love_row">
<img src="images/love2.png" onClick="deleteFavorite('article', '<?=$article_dat->id?>');">
</div>
</div>
<?
}
$html = ob_get_contents();
ob_end_clean();
print json_encode(array("word_count"=>$article_count, "html"=>$html));
?>
\ No newline at end of file
<?php
// 获取用户当前代金券
require_once ("../user_include.inc");
ErrorLogger::doOutput("Koala...ajax_get_my_coupons.php....Start.", 0);
$ta = new TemplateAction();
if(!$ta->isLogin()) {
print json_encode(array("status"=>"NG", "html"=>""));
exit;
}
//检索用户收录的单词
$param = array();
$param["user_id"] = $ta->user->id;
$param["coupon_count_MIN"] = 1;
$param["delete_flg"] = false;
$user_coupon_list = UserCouponDat::getList($param, "coupon_id", "ASC");
ErrorLogger::doOutput("Koala...ajax_get_my_coupons.php....End.", 0);
$index = 0;
ob_start();
foreach($user_coupon_list as $tmp) {
$index++;
$coupon = Coupon::getById($tmp->coupon_id);
?>
<div class="coupon">
<img src="images/<?=$coupon->image?>" class="coupon_img">
<div class="item_exchange_row">
<div>有效期: <?=substr($tmp->dead_time,0,10)?></div>
<div>可转让: <?=(1 - $tmp->transfer_count)?></div>
<div onclick="useCoupon('<?=$tmp->id?>', '<?=$tmp->coupon_id?>');" class="coupon_button">使用</div>
<div onclick="sendCoupon('<?=$tmp->id?>', '<?=$tmp->coupon_id?>');" class="coupon_button">赠送</div>
</div>
</div>
<?
}
$html = ob_get_contents();
ob_end_clean();
print json_encode(array("status"=>"OK", "html"=>$html));
?>
\ No newline at end of file
<?php
// 发送短信验证码
require_once ("../user_include.inc");
$ta = new TemplateAction();
if(!$ta->isLogin()) {
print json_encode(array("class_count"=>0, "html"=>""));
exit;
}
ErrorLogger::doOutput("Koala...ajax_get_my_course.php....Start.", 0);
//检索用户的班级设定
$param = array();
$param["user_id"] = $ta->user->id;
$param["is_valid"] = true;
$param["delete_flg"] = false;
$user_class_list = UserClassDat::getList($param, "update_date", "desc", 0, 1);
$user_class_dat = null;
$class_count = 0;
if(!empty($user_class_list)) {
$user_class_dat = $user_class_list[0];
$class_count = 1;
}
ob_start();
if(!empty($user_class_dat)) {
$url = $user_class_dat->live_url;
?>
<div class="class_item">
<div class="class_title"><?=$user_class_dat->title ?></div>
<div class="class_button" onClick="goPath('<?=$url?>')">去上课</div>
</div>
<?
} else {
$url = SCHOOL_TOP;
?>
<div class="class_item">
<div class="class_title">暂无课程</div>
<div class="class_button" onClick="goPath('<?=$url?>')">购买课程</div>
</div>
<?
}
$html = ob_get_contents();
ob_end_clean();
print json_encode(array("class_count"=>$class_count, "html"=>$html));
?>
\ No newline at end of file
<?php
// 发送短信验证码
require_once ("../user_include.inc");
$ta = new TemplateAction();
if(!$ta->isLogin()) {
print json_encode(array("count"=>0, "html"=>""));
exit;
}
//检索用户收录的单词
$sql = "select w.* from word_dat w, user_favorite_dat u where w.delete_flg=false and u.delete_flg=false and u.data_type='word' and u.user_id='{$ta->user->id}' and u.data_id=w.id order by u.id desc";
error_log("Koala...ajax_get_my_words.php...sql=" . $sql, 0);
$db = &KoalaDBManager::getInstance();
$word_data_list = $db->executeQuery($sql);
$word_count = count($word_data_list);
$index = 0;
ob_start();
foreach($word_data_list as $tmp) {
$index++;
$word_dat = new WordDat($tmp);
?>
<div class="word_item">
<div class="word_row">
<div class="index"><?=$index?>/<?=$word_count?></div>
<div class="title"><?=$word_dat->word?></div>
<div class="audio" onClick="playMp3('http://<?=SCHOOL_DOMAIN?>/mp3.php?file_name=<?=$word_dat->mp3?>');"><img src="images/audio.png"></div>
</div>
<div class="hira_kana_row">假名拼写:<?=$word_dat->hira_kana?></div>
<?
if(!empty($word_dat->chinese)) {
?>
<div class="chinese_row">释义:<?=$word_dat->chinese?></div>
<?
}
?>
<?
if(!empty($word_dat->sample)) {
?>
<div class="sample_row">释义:<?=$word_dat->chinese?></div>
<?
}
?>
<?
if(!empty($word_dat->comment)) {
?>
<div class="comment_row">用法:<?=$word_dat->comment?></div>
<?
}
?>
<div class="love_row">
<div class="love"><img src="images/love2.png" onClick="deleteFavorite('word', '<?=$word_dat->id?>');"></div>
</div>
</div>
<?
}
$html = ob_get_contents();
ob_end_clean();
print json_encode(array("word_count"=>$word_count, "html"=>$html));
?>
\ No newline at end of file
<?php
// 提交用户签到结果
require_once ("../user_include.inc");
ErrorLogger::doOutput("Koala...ajax_user_examination.php....Start.", 0);
//文章ID
$ueid = ParamUtil::getRequestNumber("ueid", 0);//user_examination_mst.id
$eid = ParamUtil::getRequestNumber("eid", 0);//examination_mst.id
$index = ParamUtil::getRequestNumber("index", 0);
$did = ParamUtil::getRequestNumber("did", 0);//examination_dat.id
$point = ParamUtil::getRequestNumber("point", 0);//改题目的分值
$is_last = ParamUtil::getRequestNumber("is_last", 0);//当前题目的是否为最后一题
$right_answer = ParamUtil::getRequestNumber("right_answer", 0);//当前题目正确答案
$user_answer = ParamUtil::getRequestNumber("user_answer", 0);//当前题目的用户选择
$use_time = ParamUtil::getRequestNumber("use_time", 0);//当前为止用户答题耗时
ErrorLogger::doOutput("Koala...ajax_user_examination.php....ueid=" . $ueid, 0);
ErrorLogger::doOutput("Koala...ajax_user_examination.php....eid=" . $eid, 0);
ErrorLogger::doOutput("Koala...ajax_user_examination.php....index=" . $index, 0);
ErrorLogger::doOutput("Koala...ajax_user_examination.php....did=" . $did, 0);
ErrorLogger::doOutput("Koala...ajax_user_examination.php....point=" . $point, 0);
ErrorLogger::doOutput("Koala...ajax_user_examination.php....is_last=" . $is_last, 0);
ErrorLogger::doOutput("Koala...ajax_user_examination.php....right_answer=" . $right_answer, 0);
ErrorLogger::doOutput("Koala...ajax_user_examination.php....user_answer=" . $user_answer, 0);
$ta = new TemplateAction();
if(!$ta->isLogin()) {
exit;
}
//更新用户已经消耗的时间/答题分数/错误题数/正确题数
$user_examination_mst = UserExaminationMst::getById($ueid);
$user_examination_mst->use_time = $use_time;
//当前答题数据保存
if($did > 0 && $right_answer > 0 && $user_answer > 0) {
//避免连击重复提交
$param = array();
$param["user_id"] = $ta->user->id;
$param["user_examination_mst_id"] = $ueid;
$param["examination_dat_id"] = $did;
$param["delete_flg"] = false;
$user_examination_dat_count = UserExaminationDat::getListCount($param);
if($user_examination_dat_count < 1) {
$user_examination_dat = new UserExaminationDat();
$user_examination_dat->user_id = $ta->user->id;
$user_examination_dat->user_examination_mst_id = $ueid;
$user_examination_dat->examination_mst_id = $eid;
$user_examination_dat->examination_dat_id = $did;
$user_examination_dat->user_answer = $user_answer;
if($right_answer == $user_answer) {
$user_examination_dat->is_right = true;
$user_examination_mst->right_count++;
$user_examination_mst->point += $point;
} else {
$user_examination_dat->is_right = false;
$user_examination_mst->wrong_count++;
}
$user_examination_dat->save();
}
}
//试卷状态保存
$user_examination_mst->save();
//最后一题交卷处理
if($did > 0 && $right_answer > 0 && $user_answer > 0 && $is_last==1) {
//用户试卷状态修改
$param = array();
$param["user_id"] = $ta->user->id;
$param["user_examination_mst_id"] = $ueid;
$param["examination_dat_id"] = $did;
$param["delete_flg"] = false;
$user_examination_dat_list = UserExaminationDat::getList($param);
$user_examination_mst = UserExaminationMst::getById($ueid);
$user_examination_mst->finish_time = date("Y-m-d H:i:s");
$user_examination_mst->status = "FINISH";
$user_examination_mst->use_time = $use_time;
$user_examination_mst->save();
//返回结束
responseFINISH($user_examination_mst);
}
//获取下一题数据
$examination_dat = null;
$param = array();
$param["examination_mst_id"] = $eid;
$param["delete_flg"] = false;
$examination_dat_list = ExaminationDat::getList($param, "category_id asc, display_order", "asc", $index, 2);
if(!empty($examination_dat_list)) {
$examination_dat = $examination_dat_list[0];
if(count($examination_dat_list) > 1) {
$examination_dat->is_last = "0";
} else {
$examination_dat->is_last = "1";
}
//如果为听力类的题目,替换为播放地址
if(!empty($examination_dat->mp3)) {
$file_name = $examination_dat->mp3;
$play_url = "http://" . SCHOOL_DOMAIN . "/subject_mp3.php?file_name=" . $file_name;
$examination_dat->mp3 = $play_url;
}
}
ErrorLogger::doOutput("Koala...ajax_user_examination.php....End.", 0);
responseOK($examination_dat);
function responseNG($data) {
$result = array("status"=>"NG", "data"=>$data);
header("Access-Control-Allow-Origin: *");
print json_encode($result);
exit;
}
function responseOK($data) {
$result = array("status"=>"OK", "data"=>$data);
header("Access-Control-Allow-Origin: *");
print json_encode($result);
exit;
}
function responseFINISH($data) {
$result = array("status"=>"FINISH", "data"=>$data);
header("Access-Control-Allow-Origin: *");
print json_encode($result);
exit;
}
?>
\ No newline at end of file
<?php
// 提交用户签到结果
require_once ("../user_include.inc");
ErrorLogger::doOutput("Koala...ajax_user_exchange_coupon.php....Start.", 0);
//代金券ID
$coupon_id = ParamUtil::getRequestNumber("coupon_id", 0);
$ta = new TemplateAction();
if(!$ta->isLogin()) {
responseNG("请先登录!");
}
//代金券是否存在
$coupon_dat = Coupon::getById($coupon_id);
if(empty($coupon_dat)) {
responseNG("数据错误!");
}
//积分整合性判断
//获取用户数据
$point_left = 0;
$param = array();
$param["user_id"] = $ta->user->id;
$param["status"] = "SUCCESS";
$param["delete_flg"] = false;
$user_point_list = UserPointLog::getList($param, "id", "desc", 0, 1);
if(!empty($user_point_list)) {
$point_left = $user_point_list[0]->point_left;
}
ErrorLogger::doOutput("Koala...ajax_user_exchange_coupon.php....point1=" . $ta->user->point, 0);
ErrorLogger::doOutput("Koala...ajax_user_exchange_coupon.php....point2=" . $point_left, 0);
if($ta->user->point != $point_left) {
responseNG("数据错误2!");
}
if($point_left < $coupon_dat->point) {
responseNG("积分不足!");
}
//开始兑换
//添加一条新的积分记录记录
$minus_point = $coupon_dat->point;
$user_point_log = new UserPointLog();
$user_point_log->user_id = $ta->user->id;
$user_point_log->action_type = 5;//兑换代金券
$user_point_log->point = (-1)*$minus_point;
$user_point_log->point_left = $point_left - $minus_point;
$user_point_log->status = "SUCCESS";
$user_point_log->save();
//添加代金券
$dead_time = time() + ($coupon_dat->valid_days)*24*3600;
$user_coupon_dat = new UserCouponDat();
$user_coupon_dat->user_id = $ta->user->id;
$user_coupon_dat->coupon_id = $coupon_id;
$user_coupon_dat->coupon_count = 1;
$user_coupon_dat->dead_time = date('y-m-d',$dead_time) . " 23:59:59";
$user_coupon_dat->transfer_count = 0;
$user_coupon_dat->save();
//更新用户表的point字段值
$ta->user->point = $user_point_log->point_left;
$ta->user->save();
ErrorLogger::doOutput("Koala...ajax_user_exchange_coupon.php....point_left=" . $point_left, 0);
ErrorLogger::doOutput("Koala...ajax_user_exchange_coupon.php....minus_point=" . $minus_point, 0);
//更新用户表的point字段值
$ta->user->point = $user_point_log->point_left;
$ta->user->save();
ErrorLogger::doOutput("Koala...ajax_user_exchange_coupon.php....End.", 0);
responseOK("兑换成功!");
function responseNG($message) {
$result = array("status"=>"NG", "message"=>$message);
header("Access-Control-Allow-Origin: *");
print json_encode($result);
exit;
}
function responseOK($message) {
$result = array("status"=>"OK", "message"=>$message);
header("Access-Control-Allow-Origin: *");
print json_encode($result);
exit;
}
?>
\ No newline at end of file
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment