update
This commit is contained in:
parent
2ce57ce218
commit
be4d55b9f6
@ -169,4 +169,9 @@
|
|||||||
$result = CostApprovedProjectLogic::detail($params);
|
$result = CostApprovedProjectLogic::detail($params);
|
||||||
return $this->data($result);
|
return $this->data($result);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public function datas()
|
||||||
|
{
|
||||||
|
return $this->data(CostApprovedProjectLogic::datas());
|
||||||
|
}
|
||||||
}
|
}
|
@ -1,184 +1,192 @@
|
|||||||
<?php
|
<?php
|
||||||
namespace app\adminapi\logic\cost_project;
|
|
||||||
|
|
||||||
use app\common\model\cost_project\CostApprovedProject;
|
namespace app\adminapi\logic\cost_project;
|
||||||
use app\common\logic\BaseLogic;
|
|
||||||
use app\common\model\cost_project\CostProject;
|
use app\common\logic\BaseLogic;
|
||||||
use think\facade\Db;
|
use app\common\model\cost_project\CostApprovedProject;
|
||||||
|
use app\common\model\cost_project\CostProject;
|
||||||
|
use think\facade\Db;
|
||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 待立项造价项目逻辑
|
* 待立项造价项目逻辑
|
||||||
* Class CostApprovedProjectLogic
|
* Class CostApprovedProjectLogic
|
||||||
* @package app\adminapi\logic\cost_project
|
* @package app\adminapi\logic\cost_project
|
||||||
*/
|
*/
|
||||||
class CostApprovedProjectLogic extends BaseLogic
|
class CostApprovedProjectLogic extends BaseLogic
|
||||||
{
|
{
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @notes 添加待立项造价项目
|
* @notes 添加待立项造价项目
|
||||||
* @param array $params
|
* @param array $params
|
||||||
* @return bool
|
* @return bool
|
||||||
* @author likeadmin
|
* @author likeadmin
|
||||||
* @date 2024/02/20 14:16
|
* @date 2024/02/20 14:16
|
||||||
*/
|
*/
|
||||||
public static function add(array $params): bool
|
public static function add(array $params): bool
|
||||||
{
|
{
|
||||||
Db::startTrans();
|
Db::startTrans();
|
||||||
try {
|
try {
|
||||||
CostApprovedProject::create([
|
CostApprovedProject::create([
|
||||||
'contract_name' => $params['contract_name'],
|
'contract_name' => $params['contract_name'],
|
||||||
'contract_num' => date('Ymd',time()).'-'.mt_rand(100000, 999999),
|
'contract_num' => date('Ymd', time()) . '-' . mt_rand(100000, 999999),
|
||||||
'contract_type' => $params['contract_type'],
|
'contract_type' => $params['contract_type'],
|
||||||
'part_a' => $params['part_a'],
|
'part_a' => $params['part_a'],
|
||||||
'part_a_contract' => $params['part_a_contract'] ?? '',
|
'part_a_contract' => $params['part_a_contract'] ?? '',
|
||||||
'part_a_address' => $params['part_a_address'] ?? '',
|
'part_a_address' => $params['part_a_address'] ?? '',
|
||||||
'part_b' => $params['part_b'],
|
'part_b' => $params['part_b'],
|
||||||
'part_b_signatory' => $params['part_b_signatory'] ?? '',
|
'part_b_signatory' => $params['part_b_signatory'] ?? '',
|
||||||
'business_nature' => $params['business_nature'] ?? 0,
|
'business_nature' => $params['business_nature'] ?? 0,
|
||||||
'industry_nature' => $params['industry_nature'] ?? 0,
|
'industry_nature' => $params['industry_nature'] ?? 0,
|
||||||
'fund_sources' => $params['fund_sources'] ?? 0,
|
'fund_sources' => $params['fund_sources'] ?? 0,
|
||||||
'const_area' => $params['const_area'] ?? 0,
|
'const_area' => $params['const_area'] ?? 0,
|
||||||
'project_money' => $params['project_money'] ?? 0,
|
'project_money' => $params['project_money'] ?? 0,
|
||||||
'project_scale' => $params['project_scale'] ?? '',
|
'project_scale' => $params['project_scale'] ?? '',
|
||||||
'money' => $params['money'],
|
'money' => $params['money'],
|
||||||
'rate' => $params['rate'] ?? 0,
|
'rate' => $params['rate'] ?? 0,
|
||||||
'contract_service' => $params['contract_service'] ?? '',
|
'contract_service' => $params['contract_service'] ?? '',
|
||||||
'start_date' => !empty($params['start_date']) ? strtotime($params['start_date']) : 0,
|
'start_date' => !empty($params['start_date']) ? strtotime($params['start_date']) : 0,
|
||||||
'end_date' => !empty($params['end_date']) ? strtotime($params['end_date']) : 0,
|
'end_date' => !empty($params['end_date']) ? strtotime($params['end_date']) : 0,
|
||||||
'performance' => $params['performance'] ?? 0,
|
'performance' => $params['performance'] ?? 0,
|
||||||
'due_time' => !empty($params['due_time']) ? strtotime($params['due_time']) : 0,
|
'due_time' => !empty($params['due_time']) ? strtotime($params['due_time']) : 0,
|
||||||
'payment' => $params['payment'] ?? '',
|
'payment' => $params['payment'] ?? '',
|
||||||
'content' => $params['content'] ?? '',
|
'content' => $params['content'] ?? '',
|
||||||
'founder' => $params['founder'] ?? '',
|
'founder' => $params['founder'] ?? '',
|
||||||
'create_date' => !empty($params['create_date']) ? strtotime($params['create_date']) : 0,
|
'create_date' => !empty($params['create_date']) ? strtotime($params['create_date']) : 0,
|
||||||
'dept' => $params['dept'],
|
'dept' => $params['dept'],
|
||||||
'signing_person' => $params['signing_person'] ?? '',
|
'signing_person' => $params['signing_person'] ?? '',
|
||||||
'regulators' => $params['regulators'],
|
'regulators' => $params['regulators'],
|
||||||
'project_director' => $params['project_director'] ?? '',
|
'project_director' => $params['project_director'] ?? '',
|
||||||
'way' => $params['way'] ?? 0,
|
'way' => $params['way'] ?? 0,
|
||||||
'seal_name' => $params['seal_name'] ?? 0,
|
'seal_name' => $params['seal_name'] ?? 0,
|
||||||
'limit' => $params['limit'] ?? 0,
|
'limit' => $params['limit'] ?? 0,
|
||||||
'limit_num' => $params['limit_num'] ?? 0,
|
'limit_num' => $params['limit_num'] ?? 0,
|
||||||
'file_type' => $params['file_type'] ?? 0,
|
'file_type' => $params['file_type'] ?? 0,
|
||||||
'seal_num' => $params['seal_num'] ?? 0,
|
'seal_num' => $params['seal_num'] ?? 0,
|
||||||
'sealer' => $params['sealer'] ?? '',
|
'sealer' => $params['sealer'] ?? '',
|
||||||
'plance_seal' => $params['plance_seal'] ?? 0,
|
'plance_seal' => $params['plance_seal'] ?? 0,
|
||||||
'send_date' => !empty($params['send_date']) ? strtotime($params['send_date']) : 0,
|
'send_date' => !empty($params['send_date']) ? strtotime($params['send_date']) : 0,
|
||||||
'number' => $params['number'] ?? '',
|
'number' => $params['number'] ?? '',
|
||||||
'annex' => $params['annex'] ? json_encode($params['annex']) : null,
|
'annex' => $params['annex'] ? json_encode($params['annex']) : null,
|
||||||
]);
|
]);
|
||||||
Db::commit();
|
Db::commit();
|
||||||
return true;
|
return true;
|
||||||
} catch (\Exception $e) {
|
} catch (\Exception $e) {
|
||||||
Db::rollback();
|
Db::rollback();
|
||||||
self::setError($e->getMessage());
|
self::setError($e->getMessage());
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
/**
|
|
||||||
* @notes 编辑待立项造价项目
|
|
||||||
* @param array $params
|
|
||||||
* @return bool
|
|
||||||
* @author likeadmin
|
|
||||||
* @date 2024/02/20 14:16
|
|
||||||
*/
|
|
||||||
public static function edit(array $params): bool
|
|
||||||
{
|
|
||||||
Db::startTrans();
|
|
||||||
try {
|
|
||||||
CostApprovedProject::where('id', $params['id'])->update([
|
|
||||||
'contract_type' => $params['contract_type'],
|
|
||||||
'contract_name' => $params['contract_name'],
|
|
||||||
'part_a' => $params['part_a'],
|
|
||||||
'part_a_contract' => $params['part_a_contract'] ?? '',
|
|
||||||
'part_a_address' => $params['part_a_address'] ?? '',
|
|
||||||
'part_b' => $params['part_b'],
|
|
||||||
'part_b_signatory' => $params['part_b_signatory'] ?? '',
|
|
||||||
'business_nature' => $params['business_nature'] ?? 0,
|
|
||||||
'industry_nature' => $params['industry_nature'] ?? 0,
|
|
||||||
'fund_sources' => $params['fund_sources'] ?? 0,
|
|
||||||
'const_area' => $params['const_area'] ?? 0,
|
|
||||||
'project_money' => $params['project_money'] ?? 0,
|
|
||||||
'project_scale' => $params['project_scale'] ?? '',
|
|
||||||
'money' => $params['money'],
|
|
||||||
'rate' => $params['rate'] ?? 0,
|
|
||||||
'contract_service' => $params['contract_service'] ?? '',
|
|
||||||
'start_date' => !empty($params['start_date']) ? strtotime($params['start_date']) : 0,
|
|
||||||
'end_date' => !empty($params['end_date']) ? strtotime($params['end_date']) : 0,
|
|
||||||
'performance' => $params['performance'] ?? 0,
|
|
||||||
'due_time' => !empty($params['due_time']) ? strtotime($params['due_time']) : 0,
|
|
||||||
'payment' => $params['payment'] ?? '',
|
|
||||||
'content' => $params['content'] ?? '',
|
|
||||||
'founder' => $params['founder'] ?? '',
|
|
||||||
'create_date' => !empty($params['create_date']) ? strtotime($params['create_date']) : 0,
|
|
||||||
'dept' => $params['dept'],
|
|
||||||
'signing_person' => $params['signing_person'] ?? '',
|
|
||||||
'regulators' => $params['regulators'],
|
|
||||||
'project_director' => $params['project_director'] ?? '',
|
|
||||||
'way' => $params['way'] ?? 0,
|
|
||||||
'seal_name' => $params['seal_name'] ?? 0,
|
|
||||||
'limit' => $params['limit'] ?? 0,
|
|
||||||
'limit_num' => $params['limit_num'] ?? 0,
|
|
||||||
'file_type' => $params['file_type'] ?? 0,
|
|
||||||
'seal_num' => $params['seal_num'] ?? 0,
|
|
||||||
'sealer' => $params['sealer'] ?? '',
|
|
||||||
'plance_seal' => $params['plance_seal'] ?? 0,
|
|
||||||
'send_date' => !empty($params['send_date']) ? strtotime($params['send_date']) : 0,
|
|
||||||
'number' => $params['number'] ?? '',
|
|
||||||
'annex' => $params['annex'] ? json_encode($params['annex']) : null,
|
|
||||||
'update_time' => time(),
|
|
||||||
]);
|
|
||||||
Db::commit();
|
|
||||||
return true;
|
|
||||||
} catch (\Exception $e) {
|
|
||||||
Db::rollback();
|
|
||||||
self::setError($e->getMessage());
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
/**
|
|
||||||
* @notes 删除待立项造价项目
|
|
||||||
* @param array $params
|
|
||||||
* @return bool
|
|
||||||
* @author likeadmin
|
|
||||||
* @date 2024/02/20 14:16
|
|
||||||
*/
|
|
||||||
public static function delete(array $params): bool
|
|
||||||
{
|
|
||||||
$project = CostProject::where('contract_id','in',$params['id'])->findOrEmpty();
|
|
||||||
if(!$project->isEmpty()){
|
|
||||||
self::setError('此数据关联了造价项目信息,需删除造价项目信息');
|
|
||||||
return false;
|
|
||||||
}
|
}
|
||||||
return CostApprovedProject::destroy($params['id']);
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @notes 获取待立项造价项目详情
|
* @notes 编辑待立项造价项目
|
||||||
* @param $params
|
* @param array $params
|
||||||
* @return array
|
* @return bool
|
||||||
* @author likeadmin
|
* @author likeadmin
|
||||||
* @date 2024/02/20 14:16
|
* @date 2024/02/20 14:16
|
||||||
*/
|
*/
|
||||||
public static function detail($params): array
|
public static function edit(array $params): bool
|
||||||
{
|
{
|
||||||
$data = CostApprovedProject::withoutField('create_time,update_time,delete_time')->findOrEmpty($params['id']);
|
Db::startTrans();
|
||||||
$data['contract_type_text'] = $data->contract_type_text;
|
try {
|
||||||
$data['business_nature_text'] = $data->business_nature_text;
|
CostApprovedProject::where('id', $params['id'])->update([
|
||||||
$data['industry_nature_text'] = $data->industry_nature_text;
|
'contract_type' => $params['contract_type'],
|
||||||
$data['fund_sources_text'] = $data->fund_sources_text;
|
'contract_name' => $params['contract_name'],
|
||||||
$data['const_area_text'] = $data->const_area_text;
|
'part_a' => $params['part_a'],
|
||||||
$data['way_text'] = $data->way_text;
|
'part_a_contract' => $params['part_a_contract'] ?? '',
|
||||||
$data['seal_name_text'] = $data->seal_name_text;
|
'part_a_address' => $params['part_a_address'] ?? '',
|
||||||
$data['file_type_text'] = $data->file_type_text;
|
'part_b' => $params['part_b'],
|
||||||
$data['plance_seal_text'] = $data->plance_seal_text;
|
'part_b_signatory' => $params['part_b_signatory'] ?? '',
|
||||||
$data['limit_text'] = $data->limit_text;
|
'business_nature' => $params['business_nature'] ?? 0,
|
||||||
return $data->toArray();
|
'industry_nature' => $params['industry_nature'] ?? 0,
|
||||||
}
|
'fund_sources' => $params['fund_sources'] ?? 0,
|
||||||
}
|
'const_area' => $params['const_area'] ?? 0,
|
||||||
|
'project_money' => $params['project_money'] ?? 0,
|
||||||
|
'project_scale' => $params['project_scale'] ?? '',
|
||||||
|
'money' => $params['money'],
|
||||||
|
'rate' => $params['rate'] ?? 0,
|
||||||
|
'contract_service' => $params['contract_service'] ?? '',
|
||||||
|
'start_date' => !empty($params['start_date']) ? strtotime($params['start_date']) : 0,
|
||||||
|
'end_date' => !empty($params['end_date']) ? strtotime($params['end_date']) : 0,
|
||||||
|
'performance' => $params['performance'] ?? 0,
|
||||||
|
'due_time' => !empty($params['due_time']) ? strtotime($params['due_time']) : 0,
|
||||||
|
'payment' => $params['payment'] ?? '',
|
||||||
|
'content' => $params['content'] ?? '',
|
||||||
|
'founder' => $params['founder'] ?? '',
|
||||||
|
'create_date' => !empty($params['create_date']) ? strtotime($params['create_date']) : 0,
|
||||||
|
'dept' => $params['dept'],
|
||||||
|
'signing_person' => $params['signing_person'] ?? '',
|
||||||
|
'regulators' => $params['regulators'],
|
||||||
|
'project_director' => $params['project_director'] ?? '',
|
||||||
|
'way' => $params['way'] ?? 0,
|
||||||
|
'seal_name' => $params['seal_name'] ?? 0,
|
||||||
|
'limit' => $params['limit'] ?? 0,
|
||||||
|
'limit_num' => $params['limit_num'] ?? 0,
|
||||||
|
'file_type' => $params['file_type'] ?? 0,
|
||||||
|
'seal_num' => $params['seal_num'] ?? 0,
|
||||||
|
'sealer' => $params['sealer'] ?? '',
|
||||||
|
'plance_seal' => $params['plance_seal'] ?? 0,
|
||||||
|
'send_date' => !empty($params['send_date']) ? strtotime($params['send_date']) : 0,
|
||||||
|
'number' => $params['number'] ?? '',
|
||||||
|
'annex' => $params['annex'] ? json_encode($params['annex']) : null,
|
||||||
|
'update_time' => time(),
|
||||||
|
]);
|
||||||
|
Db::commit();
|
||||||
|
return true;
|
||||||
|
} catch (\Exception $e) {
|
||||||
|
Db::rollback();
|
||||||
|
self::setError($e->getMessage());
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @notes 删除待立项造价项目
|
||||||
|
* @param array $params
|
||||||
|
* @return bool
|
||||||
|
* @author likeadmin
|
||||||
|
* @date 2024/02/20 14:16
|
||||||
|
*/
|
||||||
|
public static function delete(array $params): bool
|
||||||
|
{
|
||||||
|
$project = CostProject::where('contract_id', 'in', $params['id'])->findOrEmpty();
|
||||||
|
if (!$project->isEmpty()) {
|
||||||
|
self::setError('此数据关联了造价项目信息,需删除造价项目信息');
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
return CostApprovedProject::destroy($params['id']);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @notes 获取待立项造价项目详情
|
||||||
|
* @param $params
|
||||||
|
* @return array
|
||||||
|
* @author likeadmin
|
||||||
|
* @date 2024/02/20 14:16
|
||||||
|
*/
|
||||||
|
public static function detail($params): array
|
||||||
|
{
|
||||||
|
$data = CostApprovedProject::withoutField('create_time,update_time,delete_time')->findOrEmpty($params['id']);
|
||||||
|
$data['contract_type_text'] = $data->contract_type_text;
|
||||||
|
$data['business_nature_text'] = $data->business_nature_text;
|
||||||
|
$data['industry_nature_text'] = $data->industry_nature_text;
|
||||||
|
$data['fund_sources_text'] = $data->fund_sources_text;
|
||||||
|
$data['const_area_text'] = $data->const_area_text;
|
||||||
|
$data['way_text'] = $data->way_text;
|
||||||
|
$data['seal_name_text'] = $data->seal_name_text;
|
||||||
|
$data['file_type_text'] = $data->file_type_text;
|
||||||
|
$data['plance_seal_text'] = $data->plance_seal_text;
|
||||||
|
$data['limit_text'] = $data->limit_text;
|
||||||
|
return $data->toArray();
|
||||||
|
}
|
||||||
|
|
||||||
|
public static function datas()
|
||||||
|
{
|
||||||
|
return CostApprovedProject::field(['id', 'contract_name'])->order(['id' => 'desc'])->select()->each(function ($data) {
|
||||||
|
$data['projectinfo'] = 'ID:' . $data['id'] . ' / 名称:' . $data['contract_name'];
|
||||||
|
})->toArray();
|
||||||
|
}
|
||||||
|
}
|
Loading…
x
Reference in New Issue
Block a user