记账,新增修改

This commit is contained in:
Jerry Yan 2020-08-15 17:48:44 +08:00
parent 6fa32ec4d0
commit de9d4a1fc4

View File

@ -5,10 +5,13 @@ namespace wstmart\app\controller;
use think\Db; use think\Db;
use think\Exception;
use think\exception\PDOException;
class Note extends Base class Note extends Base
{ {
public function index(){ public function index()
{
$userId = (int)session('WST_USER.userId'); $userId = (int)session('WST_USER.userId');
$model = Db::name('note')->field(true) $model = Db::name('note')->field(true)
->where(["user_id" => $userId])->order("update_time", "desc") ->where(["user_id" => $userId])->order("update_time", "desc")
@ -16,7 +19,8 @@ class Note extends Base
return WSTReturn("OK", 1, $model); return WSTReturn("OK", 1, $model);
} }
public function detail(){ public function detail()
{
$userId = (int)session('WST_USER.userId'); $userId = (int)session('WST_USER.userId');
if (($id = (int)input('id', 0)) > 0) { if (($id = (int)input('id', 0)) > 0) {
$detail = Db::name('note') $detail = Db::name('note')
@ -28,7 +32,8 @@ class Note extends Base
return WSTReturn("异常请求", 0); return WSTReturn("异常请求", 0);
} }
public function save(){ public function save()
{
$userId = (int)session('WST_USER.userId'); $userId = (int)session('WST_USER.userId');
$id = (int)input('post.id', 0); $id = (int)input('post.id', 0);
$title = input("post.title"); $title = input("post.title");
@ -60,7 +65,8 @@ class Note extends Base
return WSTReturn("异常请求", 0); return WSTReturn("异常请求", 0);
} }
public function creditIndex(){ public function creditIndex()
{
$userId = (int)session('WST_USER.userId'); $userId = (int)session('WST_USER.userId');
$model = Db::name('note_credit')->field(true) $model = Db::name('note_credit')->field(true)
->where(["user_id" => $userId])->order("update_time", "desc") ->where(["user_id" => $userId])->order("update_time", "desc")
@ -68,11 +74,36 @@ class Note extends Base
return WSTReturn("OK", 1, $model); return WSTReturn("OK", 1, $model);
} }
public function creditDetail(){ public function creditDetail()
{
$userId = (int)session('WST_USER.userId');
if (($id = (int)input('id', 0)) > 0) {
$detail = Db::name('note_credit')
->where(["user_id" => $userId, "id" => $id])->find();
if (!$detail) return WSTReturn("该条内容已被删除", 0);
$detail['content'] = htmlspecialchars_decode($detail['content']);
return WSTReturn("OK", 1, $detail);
}
return WSTReturn("异常请求", 0);
} }
public function creditCreate(){ public function creditDetailInfo()
{
$userId = (int)session('WST_USER.userId');
if (($id = (int)input('id', 0)) > 0) {
$detail = Db::name('note_credit_detail')
->order('create_time', 'desc')
->where(["user_id" => $userId, "credit_id" => $id])->select();
foreach ($detail as &$item) {
$item['create_date'] = date('Y-m-d', strtotime($item['create_time']));
}
return WSTReturn("OK", 1, $detail);
}
return WSTReturn("异常请求", 0);
}
public function creditCreate()
{
$userId = (int)session('WST_USER.userId'); $userId = (int)session('WST_USER.userId');
$title = input("post.title"); $title = input("post.title");
$content = input("post.content"); $content = input("post.content");
@ -85,7 +116,7 @@ class Note extends Base
"user_id" => $userId, "user_id" => $userId,
"cur_cash" => $cash, "cur_cash" => $cash,
]); ]);
model("note_credit_detail")->save([ Db::name("note_credit_detail")->save([
"credit_id" => $id, "credit_id" => $id,
"type" => 0, "type" => 0,
"cash" => $cash, "cash" => $cash,
@ -95,17 +126,54 @@ class Note extends Base
Db::commit(); Db::commit();
return WSTReturn("OK", 1); return WSTReturn("OK", 1);
} catch (\Exception $e) { } catch (\Exception $e) {
Db::rollback();errLog($e); Db::rollback();
errLog($e);
return WSTReturn('操作失败', -1); return WSTReturn('操作失败', -1);
} }
} }
public function creditAdd(){ public function creditSave()
{
$userId = (int)session('WST_USER.userId');
$id = (int)input('post.id', 0);
$name = input("post.name");
$cur_cash = input('post.cur_cash');
$credit_cash = input('post.credit_cash');
$detail = Db::name('note_credit')
->where(["user_id" => $userId, "id" => $id])->find();
if (!$detail) return WSTReturn("该条内容已被删除", 0);
Db::startTrans();
try {
if ($detail['cur_cash'] != $cur_cash) {
Db::name('note_credit')
->where(["user_id" => $userId, "id" => $id])
->update(compact('cur_cash'));
Db::name("note_credit_detail")->insert([
"credit_id" => $id,
"user_id"=>$userId,
"type" => 9,
"amount" => $cur_cash,
"create_time" => date("Y-m-d H:i:s"),
]);
}
Db::name('note_credit')
->where(["user_id" => $userId, "id" => $id])
->update(compact('name', 'credit_cash'));
Db::commit();
return WSTReturn("OK", 1);
} catch (Exception $e) {
Db::rollback();
errLog($e);
return WSTReturn('操作失败', -1);
}
}
public function creditAdd()
{
$userId = (int)session('WST_USER.userId'); $userId = (int)session('WST_USER.userId');
$id = (int)input('post.id', 0); $id = (int)input('post.id', 0);
$type = (int)input("post.type", 1); $type = (int)input("post.type", 1);
$content = input("post.content"); $amount = (float)input("post.amount");
$cash = (float)input("post.cash");
$credit = Db::name('note_credit')->where([ $credit = Db::name('note_credit')->where([
"user_id" => $userId, "user_id" => $userId,
"id" => $id, "id" => $id,
@ -116,15 +184,11 @@ class Note extends Base
switch ($type) { switch ($type) {
case 1: case 1:
//+ //+
$credit["cash"] += $cash; $credit["amount"] += $amount;
break; break;
case 2: case 2:
//- //-
$credit["cash"] -= $cash; $credit["amount"] -= $amount;
break;
case 9:
//-
$credit["cash"] = $cash;
break; break;
} }
Db::startTrans(); Db::startTrans();
@ -133,17 +197,18 @@ class Note extends Base
"user_id" => $userId, "user_id" => $userId,
"id" => $id, "id" => $id,
])->save($credit); ])->save($credit);
model("note_credit_detail")->save([ Db::name("note_credit_detail")->insert([
"credit_id" => $id, "credit_id" => $id,
"user_id"=>$userId,
"type" => $type, "type" => $type,
"cash"=>$cash, "amount" => $amount,
"content"=>$content,
"create_time" => date("Y-m-d H:i:s"), "create_time" => date("Y-m-d H:i:s"),
]); ]);
Db::commit(); Db::commit();
return WSTReturn("OK", 1); return WSTReturn("OK", 1);
} catch (\Exception $e) { } catch (\Exception $e) {
Db::rollback();errLog($e); Db::rollback();
errLog($e);
return WSTReturn('操作失败', -1); return WSTReturn('操作失败', -1);
} }
} }