update
This commit is contained in:
parent
cdbc08e784
commit
97097d8f88
@ -18,6 +18,7 @@
|
|||||||
use app\adminapi\lists\BaseAdminDataLists;
|
use app\adminapi\lists\BaseAdminDataLists;
|
||||||
use app\common\lists\ListsExcelInterface;
|
use app\common\lists\ListsExcelInterface;
|
||||||
use app\common\lists\ListsSearchInterface;
|
use app\common\lists\ListsSearchInterface;
|
||||||
|
use app\common\model\auth\Admin;
|
||||||
use app\common\model\project_process_management\ApplyWithSeal;
|
use app\common\model\project_process_management\ApplyWithSeal;
|
||||||
|
|
||||||
|
|
||||||
@ -59,7 +60,13 @@
|
|||||||
return ApplyWithSeal::with(['projectInfo', 'dept'])->where($this->searchWhere)
|
return ApplyWithSeal::with(['projectInfo', 'dept'])->where($this->searchWhere)
|
||||||
->limit($this->limitOffset, $this->limitLength)
|
->limit($this->limitOffset, $this->limitLength)
|
||||||
->order(['id' => 'desc'])
|
->order(['id' => 'desc'])
|
||||||
->select()
|
->select()->each(function ($data) {
|
||||||
|
$admin = Admin::where('id', 'in', [$data['stampman'], $data['applicant'], $data['sjborrower'], $data['returnee']])->column('name', 'id');
|
||||||
|
$data['stampman_name'] = $admin[$data['stampman']] ?? '';
|
||||||
|
$data['applicant_name'] = $admin[$data['applicant']] ?? '';
|
||||||
|
$data['sjborrower_name'] = $admin[$data['sjborrower']] ?? '';
|
||||||
|
$data['returnee_name'] = $admin[$data['returnee']] ?? '';
|
||||||
|
})
|
||||||
->toArray();
|
->toArray();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -12,99 +12,103 @@
|
|||||||
// | author: likeadminTeam
|
// | author: likeadminTeam
|
||||||
// +----------------------------------------------------------------------
|
// +----------------------------------------------------------------------
|
||||||
|
|
||||||
namespace app\adminapi\lists\project_process_management;
|
namespace app\adminapi\lists\project_process_management;
|
||||||
|
|
||||||
|
|
||||||
use app\adminapi\lists\BaseAdminDataLists;
|
use app\adminapi\lists\BaseAdminDataLists;
|
||||||
use app\common\lists\ListsExcelInterface;
|
use app\common\lists\ListsExcelInterface;
|
||||||
use app\common\model\project_process_management\JianliProjectProgressReport;
|
use app\common\lists\ListsSearchInterface;
|
||||||
use app\common\lists\ListsSearchInterface;
|
use app\common\model\auth\Admin;
|
||||||
|
use app\common\model\project_process_management\JianliProjectProgressReport;
|
||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* JianliProjectProgressReport列表
|
* JianliProjectProgressReport列表
|
||||||
* Class JianliProjectProgressReportLists
|
* Class JianliProjectProgressReportLists
|
||||||
* @package app\adminapi\listsproject_process_management
|
* @package app\adminapi\listsproject_process_management
|
||||||
*/
|
*/
|
||||||
class JianliProjectProgressReportLists extends BaseAdminDataLists implements ListsSearchInterface,ListsExcelInterface
|
class JianliProjectProgressReportLists extends BaseAdminDataLists implements ListsSearchInterface, ListsExcelInterface
|
||||||
{
|
{
|
||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @notes 设置搜索条件
|
* @notes 设置搜索条件
|
||||||
* @return \string[][]
|
* @return \string[][]
|
||||||
* @author likeadmin
|
* @author likeadmin
|
||||||
* @date 2024/02/23 11:47
|
* @date 2024/02/23 11:47
|
||||||
*/
|
*/
|
||||||
public function setSearch(): array
|
public function setSearch(): array
|
||||||
{
|
{
|
||||||
return [
|
return [
|
||||||
'=' => ['project_id'],
|
'=' => ['project_id'],
|
||||||
'%like%' => ['num','wt_unit','djr']
|
'%like%' => ['num', 'wt_unit', 'djr']
|
||||||
];
|
];
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @notes 获取列表
|
* @notes 获取列表
|
||||||
* @return array
|
* @return array
|
||||||
* @throws \think\db\exception\DataNotFoundException
|
* @throws \think\db\exception\DataNotFoundException
|
||||||
* @throws \think\db\exception\DbException
|
* @throws \think\db\exception\DbException
|
||||||
* @throws \think\db\exception\ModelNotFoundException
|
* @throws \think\db\exception\ModelNotFoundException
|
||||||
* @author likeadmin
|
* @author likeadmin
|
||||||
* @date 2024/02/23 11:47
|
* @date 2024/02/23 11:47
|
||||||
*/
|
*/
|
||||||
public function lists(): array
|
public function lists(): array
|
||||||
{
|
{
|
||||||
return JianliProjectProgressReport::with(['projectInfo'])->where($this->searchWhere)
|
return JianliProjectProgressReport::with(['projectInfo'])->where($this->searchWhere)
|
||||||
->limit($this->limitOffset, $this->limitLength)
|
->limit($this->limitOffset, $this->limitLength)
|
||||||
->order(['id' => 'desc'])
|
->order(['id' => 'desc'])
|
||||||
->select()
|
->select()->each(function ($data) {
|
||||||
->toArray();
|
$djr = Admin::field('name')->where('id', $data['djr'])->findOrEmpty();
|
||||||
}
|
$data['djr_name'] = $djr?->name;
|
||||||
|
})
|
||||||
|
->toArray();
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @notes 获取数量
|
* @notes 获取数量
|
||||||
* @return int
|
* @return int
|
||||||
* @author likeadmin
|
* @author likeadmin
|
||||||
* @date 2024/02/23 11:47
|
* @date 2024/02/23 11:47
|
||||||
*/
|
*/
|
||||||
public function count(): int
|
public function count(): int
|
||||||
{
|
{
|
||||||
return JianliProjectProgressReport::where($this->searchWhere)->count();
|
return JianliProjectProgressReport::where($this->searchWhere)->count();
|
||||||
}
|
}
|
||||||
|
|
||||||
public function setFileName(): string
|
public function setFileName(): string
|
||||||
{
|
{
|
||||||
return '项目进度汇报';
|
return '项目进度汇报';
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @notes 导出字段
|
* @notes 导出字段
|
||||||
* @return string[]
|
* @return string[]
|
||||||
* @author 段誉
|
* @author 段誉
|
||||||
* @date 2022/11/24 16:17
|
* @date 2022/11/24 16:17
|
||||||
*/
|
*/
|
||||||
public function setExcelFields(): array
|
public function setExcelFields(): array
|
||||||
{
|
{
|
||||||
return [
|
return [
|
||||||
'id' => 'id',
|
'id' => 'id',
|
||||||
'num' => '单据编号',
|
'num' => '单据编号',
|
||||||
'project_id' => '项目id',
|
'project_id' => '项目id',
|
||||||
'bm_master' => '部门负责人',
|
'bm_master' => '部门负责人',
|
||||||
'wt_unit' => '委托单位',
|
'wt_unit' => '委托单位',
|
||||||
'xm_master' => '项目负责人',
|
'xm_master' => '项目负责人',
|
||||||
'start_date' => '实际开始日期',
|
'start_date' => '实际开始日期',
|
||||||
'end_date' => '实际结束日期',
|
'end_date' => '实际结束日期',
|
||||||
'duration' => '工期(天)',
|
'duration' => '工期(天)',
|
||||||
'working_hours' => '工时',
|
'working_hours' => '工时',
|
||||||
'done_progress' => '累计已完成进度(%)',
|
'done_progress' => '累计已完成进度(%)',
|
||||||
'bjd_progress' => '本阶段完成进度(%)',
|
'bjd_progress' => '本阶段完成进度(%)',
|
||||||
'djr' => '登记人',
|
'djr' => '登记人',
|
||||||
'apptime' => '登记时间',
|
'apptime' => '登记时间',
|
||||||
'jdms' => '形象进度描述'
|
'jdms' => '形象进度描述'
|
||||||
];
|
];
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
@ -16,6 +16,7 @@
|
|||||||
|
|
||||||
|
|
||||||
use app\common\logic\BaseLogic;
|
use app\common\logic\BaseLogic;
|
||||||
|
use app\common\model\auth\Admin;
|
||||||
use app\common\model\dept\Dept;
|
use app\common\model\dept\Dept;
|
||||||
use app\common\model\project_process_management\ApplyWithSeal;
|
use app\common\model\project_process_management\ApplyWithSeal;
|
||||||
use think\facade\Db;
|
use think\facade\Db;
|
||||||
@ -146,6 +147,11 @@
|
|||||||
{
|
{
|
||||||
$data = ApplyWithSeal::with(['projectInfo'])->findOrEmpty($params['id']);
|
$data = ApplyWithSeal::with(['projectInfo'])->findOrEmpty($params['id']);
|
||||||
$dept = Dept::field('name')->where('id', $data['depar'])->findOrEmpty();
|
$dept = Dept::field('name')->where('id', $data['depar'])->findOrEmpty();
|
||||||
|
$admin = Admin::where('id', 'in', [$data['stampman'], $data['applicant'], $data['sjborrower'], $data['returnee']])->column('name', 'id');
|
||||||
|
$data['stampman_name'] = $admin[$data['stampman']] ?? '';
|
||||||
|
$data['applicant_name'] = $admin[$data['applicant']] ?? '';
|
||||||
|
$data['sjborrower_name'] = $admin[$data['sjborrower']] ?? '';
|
||||||
|
$data['returnee_name'] = $admin[$data['returnee']] ?? '';
|
||||||
$data['dept_name'] = $dept['name'];
|
$data['dept_name'] = $dept['name'];
|
||||||
$data['types_text'] = $data->types_text;
|
$data['types_text'] = $data->types_text;
|
||||||
$data['ridingseam_text'] = $data->ridingseam_text;
|
$data['ridingseam_text'] = $data->ridingseam_text;
|
||||||
|
@ -12,126 +12,129 @@
|
|||||||
// | author: likeadminTeam
|
// | author: likeadminTeam
|
||||||
// +----------------------------------------------------------------------
|
// +----------------------------------------------------------------------
|
||||||
|
|
||||||
namespace app\adminapi\logic\project_process_management;
|
namespace app\adminapi\logic\project_process_management;
|
||||||
|
|
||||||
|
|
||||||
use app\common\model\project_process_management\JianliProjectProgressReport;
|
use app\common\logic\BaseLogic;
|
||||||
use app\common\logic\BaseLogic;
|
use app\common\model\auth\Admin;
|
||||||
use think\facade\Db;
|
use app\common\model\project_process_management\JianliProjectProgressReport;
|
||||||
|
use think\facade\Db;
|
||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* JianliProjectProgressReport逻辑
|
* JianliProjectProgressReport逻辑
|
||||||
* Class JianliProjectProgressReportLogic
|
* Class JianliProjectProgressReportLogic
|
||||||
* @package app\adminapi\logic\project_process_management
|
* @package app\adminapi\logic\project_process_management
|
||||||
*/
|
*/
|
||||||
class JianliProjectProgressReportLogic extends BaseLogic
|
class JianliProjectProgressReportLogic extends BaseLogic
|
||||||
{
|
{
|
||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @notes 添加
|
* @notes 添加
|
||||||
* @param array $params
|
* @param array $params
|
||||||
* @return bool
|
* @return bool
|
||||||
* @author likeadmin
|
* @author likeadmin
|
||||||
* @date 2024/02/23 11:47
|
* @date 2024/02/23 11:47
|
||||||
*/
|
*/
|
||||||
public static function add(array $params): bool
|
public static function add(array $params): bool
|
||||||
{
|
{
|
||||||
Db::startTrans();
|
Db::startTrans();
|
||||||
try {
|
try {
|
||||||
JianliProjectProgressReport::create([
|
JianliProjectProgressReport::create([
|
||||||
'dataid' => generate_sn(JianliProjectProgressReport::class, 'dataid'),
|
'dataid' => generate_sn(JianliProjectProgressReport::class, 'dataid'),
|
||||||
'num' => generate_sn(JianliProjectProgressReport::class, 'num'),
|
'num' => generate_sn(JianliProjectProgressReport::class, 'num'),
|
||||||
'project_id' => $params['project_id'],
|
'project_id' => $params['project_id'],
|
||||||
'bm_master' => $params['bm_master'],
|
'bm_master' => $params['bm_master'],
|
||||||
'wt_unit' => $params['wt_unit'],
|
'wt_unit' => $params['wt_unit'],
|
||||||
'xm_master' => $params['xm_master'],
|
'xm_master' => $params['xm_master'],
|
||||||
'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,
|
||||||
'duration' => $params['duration'],
|
'duration' => $params['duration'],
|
||||||
'working_hours' => $params['working_hours'],
|
'working_hours' => $params['working_hours'],
|
||||||
'done_progress' => $params['done_progress'],
|
'done_progress' => $params['done_progress'],
|
||||||
'bjd_progress' => $params['bjd_progress'],
|
'bjd_progress' => $params['bjd_progress'],
|
||||||
'djr' => $params['djr'],
|
'djr' => $params['djr'],
|
||||||
'apptime' => $params['apptime'],
|
'apptime' => $params['apptime'],
|
||||||
'jdms' => $params['jdms'],
|
'jdms' => $params['jdms'],
|
||||||
'annex' => $params['annex'] ? json_encode($params['annex']) : null,
|
'annex' => $params['annex'] ? json_encode($params['annex']) : null,
|
||||||
'fd_23' => $params['fd_23'],
|
'fd_23' => $params['fd_23'],
|
||||||
]);
|
]);
|
||||||
|
|
||||||
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 编辑
|
* @notes 编辑
|
||||||
* @param array $params
|
* @param array $params
|
||||||
* @return bool
|
* @return bool
|
||||||
* @author likeadmin
|
* @author likeadmin
|
||||||
* @date 2024/02/23 11:47
|
* @date 2024/02/23 11:47
|
||||||
*/
|
*/
|
||||||
public static function edit(array $params): bool
|
public static function edit(array $params): bool
|
||||||
{
|
{
|
||||||
Db::startTrans();
|
Db::startTrans();
|
||||||
try {
|
try {
|
||||||
JianliProjectProgressReport::where('id', $params['id'])->update([
|
JianliProjectProgressReport::where('id', $params['id'])->update([
|
||||||
'project_id' => $params['project_id'],
|
'project_id' => $params['project_id'],
|
||||||
'bm_master' => $params['bm_master'],
|
'bm_master' => $params['bm_master'],
|
||||||
'wt_unit' => $params['wt_unit'],
|
'wt_unit' => $params['wt_unit'],
|
||||||
'xm_master' => $params['xm_master'],
|
'xm_master' => $params['xm_master'],
|
||||||
'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,
|
||||||
'duration' => $params['duration'],
|
'duration' => $params['duration'],
|
||||||
'working_hours' => $params['working_hours'],
|
'working_hours' => $params['working_hours'],
|
||||||
'done_progress' => $params['done_progress'],
|
'done_progress' => $params['done_progress'],
|
||||||
'bjd_progress' => $params['bjd_progress'],
|
'bjd_progress' => $params['bjd_progress'],
|
||||||
'djr' => $params['djr'],
|
'djr' => $params['djr'],
|
||||||
'apptime' => $params['apptime'],
|
'apptime' => $params['apptime'],
|
||||||
'jdms' => $params['jdms'],
|
'jdms' => $params['jdms'],
|
||||||
'annex' => $params['annex'] ? json_encode($params['annex']) : null,
|
'annex' => $params['annex'] ? json_encode($params['annex']) : null,
|
||||||
'fd_23' => $params['fd_23'],
|
'fd_23' => $params['fd_23'],
|
||||||
]);
|
]);
|
||||||
|
|
||||||
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 删除
|
* @notes 删除
|
||||||
* @param array $params
|
* @param array $params
|
||||||
* @return bool
|
* @return bool
|
||||||
* @author likeadmin
|
* @author likeadmin
|
||||||
* @date 2024/02/23 11:47
|
* @date 2024/02/23 11:47
|
||||||
*/
|
*/
|
||||||
public static function delete(array $params): bool
|
public static function delete(array $params): bool
|
||||||
{
|
{
|
||||||
return JianliProjectProgressReport::destroy($params['id']);
|
return JianliProjectProgressReport::destroy($params['id']);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @notes 获取详情
|
* @notes 获取详情
|
||||||
* @param $params
|
* @param $params
|
||||||
* @return array
|
* @return array
|
||||||
* @author likeadmin
|
* @author likeadmin
|
||||||
* @date 2024/02/23 11:47
|
* @date 2024/02/23 11:47
|
||||||
*/
|
*/
|
||||||
public static function detail($params): array
|
public static function detail($params): array
|
||||||
{
|
{
|
||||||
$data = JianliProjectProgressReport::with(['projectInfo'])->findOrEmpty($params['id'])->toArray();
|
$data = JianliProjectProgressReport::with(['projectInfo'])->findOrEmpty($params['id']);
|
||||||
return $data;
|
$djr = Admin::field('name')->where('id', $data['djr'])->findOrEmpty();
|
||||||
}
|
$data['djr_name'] = $djr?->name;
|
||||||
}
|
return $data->toArray();
|
||||||
|
}
|
||||||
|
}
|
Loading…
x
Reference in New Issue
Block a user