Merge branch 'sprint/170_xieqiyu_43920' of https://gitlab.zcorp.cc/easycorp/zentaopms into sprint/170_xieqiyu_43920

This commit is contained in:
hufangzhou
2021-11-10 09:49:31 +08:00
3 changed files with 38 additions and 18 deletions
+4 -3
View File
@@ -102,12 +102,13 @@ class branch extends control
$this->loadModel('action');
$this->loadModel('product')->setMenu($productID);
if($this->post->name)
if($this->post->IDList)
{
$changes = $this->branch->batchUpdate();
$changes = $this->branch->batchUpdate($productID);
foreach($changes as $branchID => $change)
{
if($change) $this->action->create('branch', $branchID, 'Edited');
$extra = $branchID == BRANCH_MAIN ? $productID : '';
if($change) $this->action->create('branch', $branchID, 'Edited', '', $extra);
}
die(js::locate($this->session->branchManage, 'parent'));
+33 -14
View File
@@ -190,28 +190,47 @@ class branchModel extends model
* @access public
* @return array
*/
public function batchUpdate()
public function batchUpdate($productID)
{
$data = fixer::input('post')->get();
$branchIDList = array_keys($this->post->branchIDList);
$oldBranchList = $this->dao->select('*')->from(TABLE_BRANCH)->where('id')->in($branchIDList)->fetchAll('id');
$oldBranchList = $this->getList($productID, 'all');
$branchIDList = array_keys($this->post->IDList);
foreach($branchIDList as $branchID)
{
$branch = new stdclass();
$branch->name = $data->name[$branchID];
$branch->desc = $data->desc[$branchID];
$branch->status = $data->status[$branchID];
$branch->default = $branchID == $data->default ? 1 : 0;
if($branchID == BRANCH_MAIN)
{
if($data->default != BRANCH_MAIN) continue;
$this->dao->update(TABLE_BRANCH)->data($branch)
->batchCheck($this->config->branch->create->requiredFields, 'notempty')
->where('id')->eq($branchID)
->exec();
$this->dao->update(TABLE_BRANCH)
->set('default')->eq(0)
->where('product')->eq($productID)
->exec();
if(dao::isError()) die(js::error('branch#' . $branchID . dao::getError(true)));
if(dao::isError()) die(js::error('branch#' . $branchID . dao::getError(true)));
$changes[$branchID] = common::createChanges($oldBranchList[$branchID], $branch);
$newMainBranch = new stdClass();
$newMainBranch->default = 1;
$changes[$branchID] = common::createChanges($oldBranchList[BRANCH_MAIN], $newMainBranch);
}
else
{
$branch = new stdclass();
$branch->name = $data->name[$branchID];
$branch->desc = $data->desc[$branchID];
$branch->status = $data->status[$branchID];
$branch->default = $branchID == $data->default ? 1 : 0;
$this->dao->update(TABLE_BRANCH)->data($branch)
->batchCheck($this->config->branch->create->requiredFields, 'notempty')
->where('id')->eq($branchID)
->exec();
if(dao::isError()) die(js::error('branch#' . $branchID . dao::getError(true)));
$changes[$branchID] = common::createChanges($oldBranchList[$branchID], $branch);
}
}
return $changes;
+1 -1
View File
@@ -30,7 +30,7 @@
<?php foreach($branchList as $branch):?>
<?php $disabled = $branch->id == BRANCH_MAIN ? 'disabled' : '';?>
<tr>
<td><?php echo $branch->id == BRANCH_MAIN ? '' : $branch->id . html::hidden("branchIDList[$branch->id]", $branch);?></td>
<td><?php echo ($branch->id == BRANCH_MAIN ? '' : $branch->id) . html::hidden("IDList[$branch->id]", $branch);?></td>
<td><?php echo html::input("name[$branch->id]", $branch->name, "class='form-control chosen' $disabled");?></td>
<td><?php echo html::input("desc[$branch->id]", $branch->desc, "class='form-control' $disabled");?></td>
<td><?php echo html::select("status[$branch->id]", $lang->branch->statusList, $branch->status, "class='form-control' chosen $disabled onchange='canSetDefaultBranch(this)'");?></td>