main
parent
89c4af4972
commit
92e9bed75a
|
@ -132,6 +132,19 @@
|
||||||
<version>${hutool.version}</version>
|
<version>${hutool.version}</version>
|
||||||
</dependency>
|
</dependency>
|
||||||
|
|
||||||
|
<!-- 二维码 -->
|
||||||
|
<dependency>
|
||||||
|
<groupId>com.google.zxing</groupId>
|
||||||
|
<artifactId>core</artifactId>
|
||||||
|
<version>3.3.1</version>
|
||||||
|
</dependency>
|
||||||
|
|
||||||
|
<dependency>
|
||||||
|
<groupId>com.google.zxing</groupId>
|
||||||
|
<artifactId>javase</artifactId>
|
||||||
|
<version>3.3.1</version>
|
||||||
|
</dependency>
|
||||||
|
|
||||||
</dependencies>
|
</dependencies>
|
||||||
|
|
||||||
</project>
|
</project>
|
File diff suppressed because one or more lines are too long
|
@ -19,6 +19,10 @@ import com.yanzhu.common.utils.MessageUtils;
|
||||||
import com.yanzhu.common.utils.StringUtils;
|
import com.yanzhu.common.utils.StringUtils;
|
||||||
import com.yanzhu.system.service.ISysUserService;
|
import com.yanzhu.system.service.ISysUserService;
|
||||||
|
|
||||||
|
import java.util.Arrays;
|
||||||
|
import java.util.List;
|
||||||
|
import java.util.stream.Collectors;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 用户验证处理
|
* 用户验证处理
|
||||||
*
|
*
|
||||||
|
@ -63,13 +67,14 @@ public class UserDetailsServiceImpl implements UserDetailsService
|
||||||
|
|
||||||
//设置项目单位信息
|
//设置项目单位信息
|
||||||
if(!user.isAdmin()){
|
if(!user.isAdmin()){
|
||||||
|
String as = user.getDept().getAncestors()+","+user.getDeptId();
|
||||||
//判断是否是段队管理员
|
//判断是否是段队管理员
|
||||||
String[] ancestors = user.getDept().getAncestors().split(",");
|
String[] ancestorsIds = as.split(",");
|
||||||
Long deptId = Convert.toLong(ancestors[ancestors.length-1]);
|
List<Long> deptIds = Arrays.stream(ancestorsIds).map(ancestors -> Long.parseLong(ancestors)).collect(Collectors.toList());
|
||||||
if(deptId != null){
|
List<SysDept> depts = sysDeptService.selectParentDeptByIds(deptIds);
|
||||||
SysDept sysDept = sysDeptService.selectDeptById(deptId);
|
if(StringUtils.isNotEmpty(depts)){
|
||||||
user.setParDeptId(sysDept.getDeptId());
|
user.setParDeptId(depts.get(0).getDeptId());
|
||||||
user.setParDeptName(sysDept.getDeptName());
|
user.setParDeptName(depts.get(0).getDeptName());
|
||||||
}
|
}
|
||||||
}else{
|
}else{
|
||||||
user.setParDeptId(100L);
|
user.setParDeptId(100L);
|
||||||
|
|
|
@ -1,10 +1,18 @@
|
||||||
package com.yanzhu.web;
|
package com.yanzhu.web;
|
||||||
|
|
||||||
|
import java.io.File;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
import java.util.Map;
|
||||||
|
import java.util.Objects;
|
||||||
import javax.servlet.http.HttpServletResponse;
|
import javax.servlet.http.HttpServletResponse;
|
||||||
|
|
||||||
|
import com.yanzhu.common.annotation.Anonymous;
|
||||||
|
import com.yanzhu.common.config.YanZhuConfig;
|
||||||
import com.yanzhu.common.core.domain.entity.SysUser;
|
import com.yanzhu.common.core.domain.entity.SysUser;
|
||||||
import com.yanzhu.common.core.text.Convert;
|
import com.yanzhu.common.core.text.Convert;
|
||||||
|
import com.yanzhu.common.exception.ServiceException;
|
||||||
|
import com.yanzhu.common.utils.DateUtils;
|
||||||
|
import com.yanzhu.common.utils.ZxingUtils;
|
||||||
import com.yanzhu.project.domain.ProProjectInfo;
|
import com.yanzhu.project.domain.ProProjectInfo;
|
||||||
import org.springframework.security.access.prepost.PreAuthorize;
|
import org.springframework.security.access.prepost.PreAuthorize;
|
||||||
import org.springframework.beans.factory.annotation.Autowired;
|
import org.springframework.beans.factory.annotation.Autowired;
|
||||||
|
@ -50,6 +58,77 @@ public class ProProjectApplyController extends BaseController
|
||||||
return getDataTable(list);
|
return getDataTable(list);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 查询项目申请列表
|
||||||
|
* @PreAuthorize("@ss.hasPermi('project:projectApply:list')")
|
||||||
|
*/
|
||||||
|
@GetMapping("/checkApplyList")
|
||||||
|
public TableDataInfo checkApplyList(ProProjectApply proProjectApply)
|
||||||
|
{
|
||||||
|
SysUser sysUser = super.getLoginUser().getUser();
|
||||||
|
if(Objects.equals(proProjectApply.getActiveName(),"dys")){
|
||||||
|
proProjectApply.setApplyStatus("10");
|
||||||
|
}else{
|
||||||
|
proProjectApply.setApplyStatus("100");
|
||||||
|
}
|
||||||
|
//超管查询所有数据
|
||||||
|
if(!SysUser.isAdmin(sysUser.getUserId())){
|
||||||
|
proProjectApply.setDeptAncestors(sysUser.getDept().getAncestors()+","+sysUser.getDeptId());
|
||||||
|
}
|
||||||
|
proProjectApply.setIsDel("0");
|
||||||
|
startPage();
|
||||||
|
List<ProProjectApply> list = proProjectApplyService.selectProProjectApplyList(proProjectApply);
|
||||||
|
return getDataTable(list);
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 查询项目申请列表
|
||||||
|
* @PreAuthorize("@ss.hasPermi('project:projectApply:list')")
|
||||||
|
*/
|
||||||
|
@GetMapping("/createQr/{id}")
|
||||||
|
public AjaxResult createQr(@PathVariable("id") Long id)
|
||||||
|
{
|
||||||
|
String filePath = YanZhuConfig.getUploadPath() + "/" + DateUtils.datePath();
|
||||||
|
String fileName = id+"_"+System.currentTimeMillis();
|
||||||
|
String data = "http://49.235.181.228:8088/#/ApplyDetail?applyId="+id;
|
||||||
|
try {
|
||||||
|
File folder = new File(filePath);
|
||||||
|
if(!folder.exists()){
|
||||||
|
folder.mkdirs();
|
||||||
|
}
|
||||||
|
String path = ZxingUtils.createImage(filePath, fileName, "png", data, 200, null);
|
||||||
|
path = path.replace(YanZhuConfig.getProfile(),"/profile");
|
||||||
|
ProProjectApply proProjectApply = proProjectApplyService.selectProProjectApplyById(id);
|
||||||
|
proProjectApply.setQrPath(path);
|
||||||
|
proProjectApplyService.updateProProjectApply(proProjectApply);
|
||||||
|
return success(proProjectApply);
|
||||||
|
}catch (Exception e){
|
||||||
|
throw new ServiceException(e.getMessage());
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 查询项目申请列表
|
||||||
|
* @PreAuthorize("@ss.hasPermi('project:projectApply:list')")
|
||||||
|
*/
|
||||||
|
@GetMapping("/findGroupCountByStatus")
|
||||||
|
public AjaxResult findGroupCountByStatus(ProProjectApply proProjectApply)
|
||||||
|
{
|
||||||
|
SysUser sysUser = super.getLoginUser().getUser();
|
||||||
|
if(Objects.equals(proProjectApply.getActiveName(),"dys")){
|
||||||
|
proProjectApply.setApplyStatus("10");
|
||||||
|
}else{
|
||||||
|
proProjectApply.setApplyStatus("100");
|
||||||
|
}
|
||||||
|
//超管查询所有数据
|
||||||
|
if(!SysUser.isAdmin(sysUser.getUserId())){
|
||||||
|
proProjectApply.setDeptAncestors(sysUser.getDept().getAncestors()+","+sysUser.getDeptId());
|
||||||
|
}
|
||||||
|
proProjectApply.setIsDel("0");
|
||||||
|
List<Map<String,Object>> list = proProjectApplyService.findGroupCountByStatus(proProjectApply);
|
||||||
|
return success(list);
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 导出项目申请列表
|
* 导出项目申请列表
|
||||||
*/
|
*/
|
||||||
|
@ -67,6 +146,7 @@ public class ProProjectApplyController extends BaseController
|
||||||
* 获取项目申请详细信息
|
* 获取项目申请详细信息
|
||||||
* @PreAuthorize("@ss.hasPermi('project:projectApply:query')")
|
* @PreAuthorize("@ss.hasPermi('project:projectApply:query')")
|
||||||
*/
|
*/
|
||||||
|
@Anonymous
|
||||||
@GetMapping(value = "/{id}")
|
@GetMapping(value = "/{id}")
|
||||||
public AjaxResult getInfo(@PathVariable("id") Long id)
|
public AjaxResult getInfo(@PathVariable("id") Long id)
|
||||||
{
|
{
|
||||||
|
@ -85,9 +165,21 @@ public class ProProjectApplyController extends BaseController
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 修改项目申请
|
* 新增项目申请
|
||||||
|
* @PreAuthorize("@ss.hasPermi('project:projectApply:add')")
|
||||||
|
*/
|
||||||
|
@Log(title = "项目申请", businessType = BusinessType.INSERT)
|
||||||
|
@PostMapping("/addApplyDetail")
|
||||||
|
public AjaxResult addApplyDetail(@RequestBody ProProjectApply proProjectApply)
|
||||||
|
{
|
||||||
|
return toAjax(proProjectApplyService.insertMyProProjectApplyDetail(proProjectApply));
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 修改项目申请
|
||||||
|
* @PreAuthorize("@ss.hasPermi('project:projectApply:edit')")
|
||||||
*/
|
*/
|
||||||
@PreAuthorize("@ss.hasPermi('project:projectApply:edit')")
|
|
||||||
@Log(title = "项目申请", businessType = BusinessType.UPDATE)
|
@Log(title = "项目申请", businessType = BusinessType.UPDATE)
|
||||||
@PutMapping
|
@PutMapping
|
||||||
public AjaxResult edit(@RequestBody ProProjectApply proProjectApply)
|
public AjaxResult edit(@RequestBody ProProjectApply proProjectApply)
|
||||||
|
|
|
@ -0,0 +1,98 @@
|
||||||
|
package com.yanzhu.web;
|
||||||
|
|
||||||
|
import com.yanzhu.common.annotation.Log;
|
||||||
|
import com.yanzhu.common.core.controller.BaseController;
|
||||||
|
import com.yanzhu.common.core.domain.AjaxResult;
|
||||||
|
import com.yanzhu.common.core.page.TableDataInfo;
|
||||||
|
import com.yanzhu.common.enums.BusinessType;
|
||||||
|
import com.yanzhu.common.utils.poi.ExcelUtil;
|
||||||
|
import com.yanzhu.project.domain.ProProjectApplyDetailCheck;
|
||||||
|
import com.yanzhu.project.service.IProProjectApplyDetailCheckService;
|
||||||
|
import org.springframework.beans.factory.annotation.Autowired;
|
||||||
|
import org.springframework.security.access.prepost.PreAuthorize;
|
||||||
|
import org.springframework.web.bind.annotation.*;
|
||||||
|
|
||||||
|
import javax.servlet.http.HttpServletResponse;
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 申请详情验收Controller
|
||||||
|
*
|
||||||
|
* @author yanZhu
|
||||||
|
* @date 2024-09-01
|
||||||
|
*/
|
||||||
|
@RestController
|
||||||
|
@RequestMapping("/manage/proProjectApplyDetailCheck")
|
||||||
|
public class ProProjectApplyDetailCheckController extends BaseController
|
||||||
|
{
|
||||||
|
@Autowired
|
||||||
|
private IProProjectApplyDetailCheckService proProjectApplyDetailCheckService;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 查询申请详情验收列表
|
||||||
|
*/
|
||||||
|
@PreAuthorize("@ss.hasPermi('manage:proProjectApplyDetailCheck:list')")
|
||||||
|
@GetMapping("/list")
|
||||||
|
public TableDataInfo list(ProProjectApplyDetailCheck proProjectApplyDetailCheck)
|
||||||
|
{
|
||||||
|
startPage();
|
||||||
|
List<ProProjectApplyDetailCheck> list = proProjectApplyDetailCheckService.selectProProjectApplyDetailCheckList(proProjectApplyDetailCheck);
|
||||||
|
return getDataTable(list);
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 导出申请详情验收列表
|
||||||
|
*/
|
||||||
|
@PreAuthorize("@ss.hasPermi('manage:proProjectApplyDetailCheck:export')")
|
||||||
|
@Log(title = "申请详情验收", businessType = BusinessType.EXPORT)
|
||||||
|
@PostMapping("/export")
|
||||||
|
public void export(HttpServletResponse response, ProProjectApplyDetailCheck proProjectApplyDetailCheck)
|
||||||
|
{
|
||||||
|
List<ProProjectApplyDetailCheck> list = proProjectApplyDetailCheckService.selectProProjectApplyDetailCheckList(proProjectApplyDetailCheck);
|
||||||
|
ExcelUtil<ProProjectApplyDetailCheck> util = new ExcelUtil<ProProjectApplyDetailCheck>(ProProjectApplyDetailCheck.class);
|
||||||
|
util.exportExcel(response, list, "申请详情验收数据");
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 获取申请详情验收详细信息
|
||||||
|
* @PreAuthorize("@ss.hasPermi('manage:proProjectApplyDetailCheck:query')")
|
||||||
|
*/
|
||||||
|
@GetMapping(value = "/findAll/{detailId}")
|
||||||
|
public AjaxResult findAll(@PathVariable("detailId") Long detailId)
|
||||||
|
{
|
||||||
|
return success(proProjectApplyDetailCheckService.selectProProjectApplyDetailCheckByDetailId(detailId));
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 新增申请详情验收
|
||||||
|
* @PreAuthorize("@ss.hasPermi('manage:proProjectApplyDetailCheck:add')")
|
||||||
|
*/
|
||||||
|
@Log(title = "申请详情验收", businessType = BusinessType.INSERT)
|
||||||
|
@PostMapping
|
||||||
|
public AjaxResult add(@RequestBody ProProjectApplyDetailCheck proProjectApplyDetailCheck)
|
||||||
|
{
|
||||||
|
return toAjax(proProjectApplyDetailCheckService.insertProProjectApplyDetailCheck(proProjectApplyDetailCheck));
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 修改申请详情验收
|
||||||
|
*/
|
||||||
|
@PreAuthorize("@ss.hasPermi('manage:proProjectApplyDetailCheck:edit')")
|
||||||
|
@Log(title = "申请详情验收", businessType = BusinessType.UPDATE)
|
||||||
|
@PutMapping
|
||||||
|
public AjaxResult edit(@RequestBody ProProjectApplyDetailCheck proProjectApplyDetailCheck)
|
||||||
|
{
|
||||||
|
return toAjax(proProjectApplyDetailCheckService.updateProProjectApplyDetailCheck(proProjectApplyDetailCheck));
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 删除申请详情验收
|
||||||
|
*/
|
||||||
|
@PreAuthorize("@ss.hasPermi('manage:proProjectApplyDetailCheck:remove')")
|
||||||
|
@Log(title = "申请详情验收", businessType = BusinessType.DELETE)
|
||||||
|
@DeleteMapping("/{detailIds}")
|
||||||
|
public AjaxResult remove(@PathVariable Long[] detailIds)
|
||||||
|
{
|
||||||
|
return toAjax(proProjectApplyDetailCheckService.deleteProProjectApplyDetailCheckByDetailIds(detailIds));
|
||||||
|
}
|
||||||
|
}
|
|
@ -62,6 +62,10 @@ public class ProProjectApply extends BaseEntity
|
||||||
@Excel(name = "使用时间", width = 30, dateFormat = "yyyy-MM-dd")
|
@Excel(name = "使用时间", width = 30, dateFormat = "yyyy-MM-dd")
|
||||||
private Date useTime;
|
private Date useTime;
|
||||||
|
|
||||||
|
/** 二维码地址 */
|
||||||
|
@Excel(name = "二维码地址")
|
||||||
|
private String qrPath;
|
||||||
|
|
||||||
/** 是否删除 */
|
/** 是否删除 */
|
||||||
@Excel(name = "是否删除")
|
@Excel(name = "是否删除")
|
||||||
private String isDel;
|
private String isDel;
|
||||||
|
@ -69,6 +73,8 @@ public class ProProjectApply extends BaseEntity
|
||||||
/** 申请人单位名称 */
|
/** 申请人单位名称 */
|
||||||
private String createByDeptName;
|
private String createByDeptName;
|
||||||
|
|
||||||
|
private String deptAncestors;
|
||||||
|
|
||||||
/** 项目申请明细信息 */
|
/** 项目申请明细信息 */
|
||||||
private List<ProProjectApplyDetail> proProjectApplyDetailList;
|
private List<ProProjectApplyDetail> proProjectApplyDetailList;
|
||||||
|
|
||||||
|
@ -187,6 +193,14 @@ public class ProProjectApply extends BaseEntity
|
||||||
this.createByDeptName = createByDeptName;
|
this.createByDeptName = createByDeptName;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public String getQrPath() {
|
||||||
|
return qrPath;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setQrPath(String qrPath) {
|
||||||
|
this.qrPath = qrPath;
|
||||||
|
}
|
||||||
|
|
||||||
public List<ProProjectApplyDetail> getProProjectApplyDetailList()
|
public List<ProProjectApplyDetail> getProProjectApplyDetailList()
|
||||||
{
|
{
|
||||||
return proProjectApplyDetailList;
|
return proProjectApplyDetailList;
|
||||||
|
@ -197,6 +211,14 @@ public class ProProjectApply extends BaseEntity
|
||||||
this.proProjectApplyDetailList = proProjectApplyDetailList;
|
this.proProjectApplyDetailList = proProjectApplyDetailList;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public String getDeptAncestors() {
|
||||||
|
return deptAncestors;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setDeptAncestors(String deptAncestors) {
|
||||||
|
this.deptAncestors = deptAncestors;
|
||||||
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public String toString() {
|
public String toString() {
|
||||||
return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
|
return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
|
||||||
|
|
|
@ -78,6 +78,18 @@ public class ProProjectApplyDetail extends BaseEntity
|
||||||
@Excel(name = "总价")
|
@Excel(name = "总价")
|
||||||
private BigDecimal totalPrice;
|
private BigDecimal totalPrice;
|
||||||
|
|
||||||
|
/** 添加类型 */
|
||||||
|
@Excel(name = "添加类型")
|
||||||
|
private int pushType;
|
||||||
|
|
||||||
|
/** 验收总量 */
|
||||||
|
@Excel(name = "验收总量")
|
||||||
|
private String checkedTotalValue;
|
||||||
|
|
||||||
|
/** 是否验收 */
|
||||||
|
@Excel(name = "是否验收")
|
||||||
|
private int isChecked;
|
||||||
|
|
||||||
/** 是否删除 */
|
/** 是否删除 */
|
||||||
@Excel(name = "是否删除")
|
@Excel(name = "是否删除")
|
||||||
private String isDel;
|
private String isDel;
|
||||||
|
@ -226,6 +238,30 @@ public class ProProjectApplyDetail extends BaseEntity
|
||||||
return isDel;
|
return isDel;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public int getPushType() {
|
||||||
|
return pushType;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setPushType(int pushType) {
|
||||||
|
this.pushType = pushType;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getCheckedTotalValue() {
|
||||||
|
return checkedTotalValue;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setCheckedTotalValue(String checkedTotalValue) {
|
||||||
|
this.checkedTotalValue = checkedTotalValue;
|
||||||
|
}
|
||||||
|
|
||||||
|
public int getIsChecked() {
|
||||||
|
return isChecked;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setIsChecked(int isChecked) {
|
||||||
|
this.isChecked = isChecked;
|
||||||
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public String toString() {
|
public String toString() {
|
||||||
return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
|
return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
|
||||||
|
|
|
@ -0,0 +1,69 @@
|
||||||
|
package com.yanzhu.project.domain;
|
||||||
|
|
||||||
|
import java.math.BigDecimal;
|
||||||
|
import org.apache.commons.lang3.builder.ToStringBuilder;
|
||||||
|
import org.apache.commons.lang3.builder.ToStringStyle;
|
||||||
|
import com.yanzhu.common.annotation.Excel;
|
||||||
|
import com.yanzhu.common.core.domain.BaseEntity;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 申请详情验收对象 pro_project_apply_detail_check
|
||||||
|
*
|
||||||
|
* @author yanZhu
|
||||||
|
* @date 2024-09-01
|
||||||
|
*/
|
||||||
|
public class ProProjectApplyDetailCheck extends BaseEntity
|
||||||
|
{
|
||||||
|
private static final long serialVersionUID = 1L;
|
||||||
|
|
||||||
|
/** 详情主键 */
|
||||||
|
@Excel(name = "详情主键")
|
||||||
|
private Long detailId;
|
||||||
|
|
||||||
|
/** 验收值 */
|
||||||
|
@Excel(name = "验收值")
|
||||||
|
private String checkValue;
|
||||||
|
|
||||||
|
/** 验收价格 */
|
||||||
|
@Excel(name = "验收价格")
|
||||||
|
private BigDecimal checkPrice;
|
||||||
|
|
||||||
|
public void setDetailId(Long detailId)
|
||||||
|
{
|
||||||
|
this.detailId = detailId;
|
||||||
|
}
|
||||||
|
|
||||||
|
public Long getDetailId()
|
||||||
|
{
|
||||||
|
return detailId;
|
||||||
|
}
|
||||||
|
public void setCheckValue(String checkValue)
|
||||||
|
{
|
||||||
|
this.checkValue = checkValue;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getCheckValue()
|
||||||
|
{
|
||||||
|
return checkValue;
|
||||||
|
}
|
||||||
|
public void setCheckPrice(BigDecimal checkPrice)
|
||||||
|
{
|
||||||
|
this.checkPrice = checkPrice;
|
||||||
|
}
|
||||||
|
|
||||||
|
public BigDecimal getCheckPrice()
|
||||||
|
{
|
||||||
|
return checkPrice;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public String toString() {
|
||||||
|
return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
|
||||||
|
.append("detailId", getDetailId())
|
||||||
|
.append("checkValue", getCheckValue())
|
||||||
|
.append("checkPrice", getCheckPrice())
|
||||||
|
.append("createBy", getCreateBy())
|
||||||
|
.append("createTime", getCreateTime())
|
||||||
|
.toString();
|
||||||
|
}
|
||||||
|
}
|
|
@ -0,0 +1,62 @@
|
||||||
|
package com.yanzhu.project.mapper;
|
||||||
|
|
||||||
|
import com.yanzhu.project.domain.ProProjectApplyDetailCheck;
|
||||||
|
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 申请详情验收Mapper接口
|
||||||
|
*
|
||||||
|
* @author yanZhu
|
||||||
|
* @date 2024-09-01
|
||||||
|
*/
|
||||||
|
public interface ProProjectApplyDetailCheckMapper
|
||||||
|
{
|
||||||
|
/**
|
||||||
|
* 查询申请详情验收
|
||||||
|
*
|
||||||
|
* @param detailId 申请详情验收主键
|
||||||
|
* @return 申请详情验收
|
||||||
|
*/
|
||||||
|
public List<ProProjectApplyDetailCheck> selectProProjectApplyDetailCheckByDetailId(Long detailId);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 查询申请详情验收列表
|
||||||
|
*
|
||||||
|
* @param proProjectApplyDetailCheck 申请详情验收
|
||||||
|
* @return 申请详情验收集合
|
||||||
|
*/
|
||||||
|
public List<ProProjectApplyDetailCheck> selectProProjectApplyDetailCheckList(ProProjectApplyDetailCheck proProjectApplyDetailCheck);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 新增申请详情验收
|
||||||
|
*
|
||||||
|
* @param proProjectApplyDetailCheck 申请详情验收
|
||||||
|
* @return 结果
|
||||||
|
*/
|
||||||
|
public int insertProProjectApplyDetailCheck(ProProjectApplyDetailCheck proProjectApplyDetailCheck);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 修改申请详情验收
|
||||||
|
*
|
||||||
|
* @param proProjectApplyDetailCheck 申请详情验收
|
||||||
|
* @return 结果
|
||||||
|
*/
|
||||||
|
public int updateProProjectApplyDetailCheck(ProProjectApplyDetailCheck proProjectApplyDetailCheck);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 删除申请详情验收
|
||||||
|
*
|
||||||
|
* @param detailId 申请详情验收主键
|
||||||
|
* @return 结果
|
||||||
|
*/
|
||||||
|
public int deleteProProjectApplyDetailCheckByDetailId(Long detailId);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 批量删除申请详情验收
|
||||||
|
*
|
||||||
|
* @param detailIds 需要删除的数据主键集合
|
||||||
|
* @return 结果
|
||||||
|
*/
|
||||||
|
public int deleteProProjectApplyDetailCheckByDetailIds(Long[] detailIds);
|
||||||
|
}
|
|
@ -1,6 +1,8 @@
|
||||||
package com.yanzhu.project.mapper;
|
package com.yanzhu.project.mapper;
|
||||||
|
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
import java.util.Map;
|
||||||
|
|
||||||
import com.yanzhu.project.domain.ProProjectApply;
|
import com.yanzhu.project.domain.ProProjectApply;
|
||||||
import com.yanzhu.project.domain.ProProjectApplyDetail;
|
import com.yanzhu.project.domain.ProProjectApplyDetail;
|
||||||
|
|
||||||
|
@ -28,6 +30,14 @@ public interface ProProjectApplyMapper
|
||||||
*/
|
*/
|
||||||
public List<ProProjectApply> selectProProjectApplyList(ProProjectApply proProjectApply);
|
public List<ProProjectApply> selectProProjectApplyList(ProProjectApply proProjectApply);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 统计项目申请信息
|
||||||
|
*
|
||||||
|
* @param proProjectApply 项目申请
|
||||||
|
* @return 项目申请集合
|
||||||
|
*/
|
||||||
|
public List<Map<String,Object>> findGroupCountByStatus(ProProjectApply proProjectApply);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 新增项目申请
|
* 新增项目申请
|
||||||
*
|
*
|
||||||
|
@ -84,4 +94,8 @@ public interface ProProjectApplyMapper
|
||||||
* @return 结果
|
* @return 结果
|
||||||
*/
|
*/
|
||||||
public int deleteProProjectApplyDetailByApplyId(Long id);
|
public int deleteProProjectApplyDetailByApplyId(Long id);
|
||||||
|
|
||||||
|
public ProProjectApplyDetail selectProProjectApplyDetailById(Long id);
|
||||||
|
|
||||||
|
public int updateProProjectApplyDetail(ProProjectApplyDetail proProjectApplyDetail);
|
||||||
}
|
}
|
||||||
|
|
|
@ -0,0 +1,62 @@
|
||||||
|
package com.yanzhu.project.service;
|
||||||
|
|
||||||
|
import com.yanzhu.project.domain.ProProjectApplyDetailCheck;
|
||||||
|
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 申请详情验收Service接口
|
||||||
|
*
|
||||||
|
* @author yanZhu
|
||||||
|
* @date 2024-09-01
|
||||||
|
*/
|
||||||
|
public interface IProProjectApplyDetailCheckService
|
||||||
|
{
|
||||||
|
/**
|
||||||
|
* 查询申请详情验收
|
||||||
|
*
|
||||||
|
* @param detailId 申请详情验收主键
|
||||||
|
* @return 申请详情验收
|
||||||
|
*/
|
||||||
|
public List<ProProjectApplyDetailCheck> selectProProjectApplyDetailCheckByDetailId(Long detailId);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 查询申请详情验收列表
|
||||||
|
*
|
||||||
|
* @param proProjectApplyDetailCheck 申请详情验收
|
||||||
|
* @return 申请详情验收集合
|
||||||
|
*/
|
||||||
|
public List<ProProjectApplyDetailCheck> selectProProjectApplyDetailCheckList(ProProjectApplyDetailCheck proProjectApplyDetailCheck);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 新增申请详情验收
|
||||||
|
*
|
||||||
|
* @param proProjectApplyDetailCheck 申请详情验收
|
||||||
|
* @return 结果
|
||||||
|
*/
|
||||||
|
public int insertProProjectApplyDetailCheck(ProProjectApplyDetailCheck proProjectApplyDetailCheck);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 修改申请详情验收
|
||||||
|
*
|
||||||
|
* @param proProjectApplyDetailCheck 申请详情验收
|
||||||
|
* @return 结果
|
||||||
|
*/
|
||||||
|
public int updateProProjectApplyDetailCheck(ProProjectApplyDetailCheck proProjectApplyDetailCheck);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 批量删除申请详情验收
|
||||||
|
*
|
||||||
|
* @param detailIds 需要删除的申请详情验收主键集合
|
||||||
|
* @return 结果
|
||||||
|
*/
|
||||||
|
public int deleteProProjectApplyDetailCheckByDetailIds(Long[] detailIds);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 删除申请详情验收信息
|
||||||
|
*
|
||||||
|
* @param detailId 申请详情验收主键
|
||||||
|
* @return 结果
|
||||||
|
*/
|
||||||
|
public int deleteProProjectApplyDetailCheckByDetailId(Long detailId);
|
||||||
|
}
|
|
@ -1,6 +1,8 @@
|
||||||
package com.yanzhu.project.service;
|
package com.yanzhu.project.service;
|
||||||
|
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
import java.util.Map;
|
||||||
|
|
||||||
import com.yanzhu.project.domain.ProProjectApply;
|
import com.yanzhu.project.domain.ProProjectApply;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -27,6 +29,14 @@ public interface IProProjectApplyService
|
||||||
*/
|
*/
|
||||||
public List<ProProjectApply> selectProProjectApplyList(ProProjectApply proProjectApply);
|
public List<ProProjectApply> selectProProjectApplyList(ProProjectApply proProjectApply);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 统计项目申请信息
|
||||||
|
*
|
||||||
|
* @param proProjectApply 项目申请
|
||||||
|
* @return 项目申请集合
|
||||||
|
*/
|
||||||
|
public List<Map<String,Object>> findGroupCountByStatus(ProProjectApply proProjectApply);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 新增项目申请
|
* 新增项目申请
|
||||||
*
|
*
|
||||||
|
@ -35,6 +45,14 @@ public interface IProProjectApplyService
|
||||||
*/
|
*/
|
||||||
public int insertProProjectApply(ProProjectApply proProjectApply);
|
public int insertProProjectApply(ProProjectApply proProjectApply);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 新增项目申请
|
||||||
|
*
|
||||||
|
* @param proProjectApply 项目申请
|
||||||
|
* @return 结果
|
||||||
|
*/
|
||||||
|
public int insertMyProProjectApplyDetail(ProProjectApply proProjectApply);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 修改项目申请
|
* 修改项目申请
|
||||||
*
|
*
|
||||||
|
|
|
@ -0,0 +1,111 @@
|
||||||
|
package com.yanzhu.project.service.impl;
|
||||||
|
|
||||||
|
import com.yanzhu.common.core.text.Convert;
|
||||||
|
import com.yanzhu.common.utils.DateUtils;
|
||||||
|
import com.yanzhu.common.utils.SecurityUtils;
|
||||||
|
import com.yanzhu.project.domain.ProProjectApplyDetail;
|
||||||
|
import com.yanzhu.project.domain.ProProjectApplyDetailCheck;
|
||||||
|
import com.yanzhu.project.mapper.ProProjectApplyDetailCheckMapper;
|
||||||
|
import com.yanzhu.project.mapper.ProProjectApplyMapper;
|
||||||
|
import com.yanzhu.project.service.IProProjectApplyDetailCheckService;
|
||||||
|
import org.springframework.beans.factory.annotation.Autowired;
|
||||||
|
import org.springframework.stereotype.Service;
|
||||||
|
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 申请详情验收Service业务层处理
|
||||||
|
*
|
||||||
|
* @author yanZhu
|
||||||
|
* @date 2024-09-01
|
||||||
|
*/
|
||||||
|
@Service
|
||||||
|
public class ProProjectApplyDetailCheckServiceImpl implements IProProjectApplyDetailCheckService
|
||||||
|
{
|
||||||
|
@Autowired
|
||||||
|
private ProProjectApplyMapper proProjectApplyMapper;
|
||||||
|
|
||||||
|
@Autowired
|
||||||
|
private ProProjectApplyDetailCheckMapper proProjectApplyDetailCheckMapper;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 查询申请详情验收
|
||||||
|
*
|
||||||
|
* @param detailId 申请详情验收主键
|
||||||
|
* @return 申请详情验收
|
||||||
|
*/
|
||||||
|
@Override
|
||||||
|
public List<ProProjectApplyDetailCheck> selectProProjectApplyDetailCheckByDetailId(Long detailId)
|
||||||
|
{
|
||||||
|
return proProjectApplyDetailCheckMapper.selectProProjectApplyDetailCheckByDetailId(detailId);
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 查询申请详情验收列表
|
||||||
|
*
|
||||||
|
* @param proProjectApplyDetailCheck 申请详情验收
|
||||||
|
* @return 申请详情验收
|
||||||
|
*/
|
||||||
|
@Override
|
||||||
|
public List<ProProjectApplyDetailCheck> selectProProjectApplyDetailCheckList(ProProjectApplyDetailCheck proProjectApplyDetailCheck)
|
||||||
|
{
|
||||||
|
return proProjectApplyDetailCheckMapper.selectProProjectApplyDetailCheckList(proProjectApplyDetailCheck);
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 新增申请详情验收
|
||||||
|
*
|
||||||
|
* @param proProjectApplyDetailCheck 申请详情验收
|
||||||
|
* @return 结果
|
||||||
|
*/
|
||||||
|
@Override
|
||||||
|
public int insertProProjectApplyDetailCheck(ProProjectApplyDetailCheck proProjectApplyDetailCheck)
|
||||||
|
{
|
||||||
|
proProjectApplyDetailCheck.setCreateBy(SecurityUtils.getLoginUser().getUser().getNickName());
|
||||||
|
proProjectApplyDetailCheck.setCreateTime(DateUtils.getNowDate());
|
||||||
|
int res = proProjectApplyDetailCheckMapper.insertProProjectApplyDetailCheck(proProjectApplyDetailCheck);
|
||||||
|
if(res>0){
|
||||||
|
ProProjectApplyDetail proProjectApplyDetail = proProjectApplyMapper.selectProProjectApplyDetailById(proProjectApplyDetailCheck.getDetailId());
|
||||||
|
proProjectApplyDetail.setIsChecked(1);
|
||||||
|
proProjectApplyDetail.setCheckedTotalValue(Convert.toStr(Convert.toDouble(proProjectApplyDetail.getCheckedTotalValue())+Convert.toDouble(proProjectApplyDetailCheck.getCheckValue())));
|
||||||
|
proProjectApplyMapper.updateProProjectApplyDetail(proProjectApplyDetail);
|
||||||
|
}
|
||||||
|
return res;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 修改申请详情验收
|
||||||
|
*
|
||||||
|
* @param proProjectApplyDetailCheck 申请详情验收
|
||||||
|
* @return 结果
|
||||||
|
*/
|
||||||
|
@Override
|
||||||
|
public int updateProProjectApplyDetailCheck(ProProjectApplyDetailCheck proProjectApplyDetailCheck)
|
||||||
|
{
|
||||||
|
return proProjectApplyDetailCheckMapper.updateProProjectApplyDetailCheck(proProjectApplyDetailCheck);
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 批量删除申请详情验收
|
||||||
|
*
|
||||||
|
* @param detailIds 需要删除的申请详情验收主键
|
||||||
|
* @return 结果
|
||||||
|
*/
|
||||||
|
@Override
|
||||||
|
public int deleteProProjectApplyDetailCheckByDetailIds(Long[] detailIds)
|
||||||
|
{
|
||||||
|
return proProjectApplyDetailCheckMapper.deleteProProjectApplyDetailCheckByDetailIds(detailIds);
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 删除申请详情验收信息
|
||||||
|
*
|
||||||
|
* @param detailId 申请详情验收主键
|
||||||
|
* @return 结果
|
||||||
|
*/
|
||||||
|
@Override
|
||||||
|
public int deleteProProjectApplyDetailCheckByDetailId(Long detailId)
|
||||||
|
{
|
||||||
|
return proProjectApplyDetailCheckMapper.deleteProProjectApplyDetailCheckByDetailId(detailId);
|
||||||
|
}
|
||||||
|
}
|
|
@ -14,6 +14,9 @@ import com.yanzhu.system.mapper.SysDictDataMapper;
|
||||||
import org.springframework.beans.factory.annotation.Autowired;
|
import org.springframework.beans.factory.annotation.Autowired;
|
||||||
import org.springframework.stereotype.Service;
|
import org.springframework.stereotype.Service;
|
||||||
import java.util.ArrayList;
|
import java.util.ArrayList;
|
||||||
|
import java.util.Map;
|
||||||
|
import java.util.Objects;
|
||||||
|
|
||||||
import com.yanzhu.common.utils.StringUtils;
|
import com.yanzhu.common.utils.StringUtils;
|
||||||
import org.springframework.transaction.annotation.Transactional;
|
import org.springframework.transaction.annotation.Transactional;
|
||||||
import com.yanzhu.project.domain.ProProjectApplyDetail;
|
import com.yanzhu.project.domain.ProProjectApplyDetail;
|
||||||
|
@ -48,6 +51,16 @@ public class ProProjectApplyServiceImpl implements IProProjectApplyService
|
||||||
return proProjectApplyMapper.selectProProjectApplyById(id);
|
return proProjectApplyMapper.selectProProjectApplyById(id);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 统计项目申请信息
|
||||||
|
*
|
||||||
|
* @param proProjectApply 项目申请
|
||||||
|
* @return 项目申请集合
|
||||||
|
*/
|
||||||
|
public List<Map<String,Object>> findGroupCountByStatus(ProProjectApply proProjectApply){
|
||||||
|
return proProjectApplyMapper.findGroupCountByStatus(proProjectApply);
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 查询项目申请列表
|
* 查询项目申请列表
|
||||||
*
|
*
|
||||||
|
@ -147,7 +160,7 @@ public class ProProjectApplyServiceImpl implements IProProjectApplyService
|
||||||
*
|
*
|
||||||
* @param proProjectApply 项目申请对象
|
* @param proProjectApply 项目申请对象
|
||||||
*/
|
*/
|
||||||
public void insertProProjectApplyDetail(ProProjectApply proProjectApply)
|
private void insertProProjectApplyDetail(ProProjectApply proProjectApply)
|
||||||
{
|
{
|
||||||
List<ProProjectApplyDetail> proProjectApplyDetailList = proProjectApply.getProProjectApplyDetailList();
|
List<ProProjectApplyDetail> proProjectApplyDetailList = proProjectApply.getProProjectApplyDetailList();
|
||||||
Long id = proProjectApply.getId();
|
Long id = proProjectApply.getId();
|
||||||
|
@ -164,10 +177,11 @@ public class ProProjectApplyServiceImpl implements IProProjectApplyService
|
||||||
if(StringUtils.isEmpty(proProjectApplyDetail.getAssetsName())){
|
if(StringUtils.isEmpty(proProjectApplyDetail.getAssetsName())){
|
||||||
BaseAssetsType baseAssetsType = baseAssetsTypeMapper.selectBaseAssetsTypeById(proProjectApplyDetail.getAssetsId());
|
BaseAssetsType baseAssetsType = baseAssetsTypeMapper.selectBaseAssetsTypeById(proProjectApplyDetail.getAssetsId());
|
||||||
proProjectApplyDetail.setAssetsName(baseAssetsType.getName());
|
proProjectApplyDetail.setAssetsName(baseAssetsType.getName());
|
||||||
//为空时,重新查询并赋值
|
}
|
||||||
if(proProjectApplyDetail.getTypeId()!=null && StringUtils.isEmpty(proProjectApplyDetail.getTypeName())){
|
if(Objects.nonNull(proProjectApplyDetail.getTypeId())){
|
||||||
|
if(StringUtils.isEmpty(proProjectApplyDetail.getTypeName())){
|
||||||
//资产类型
|
//资产类型
|
||||||
BaseAssetsType parentAssetsType = baseAssetsTypeMapper.selectBaseAssetsTypeById(baseAssetsType.getParentId());
|
BaseAssetsType parentAssetsType = baseAssetsTypeMapper.selectBaseAssetsTypeById(proProjectApplyDetail.getTypeId());
|
||||||
proProjectApplyDetail.setTypeName(parentAssetsType.getName());
|
proProjectApplyDetail.setTypeName(parentAssetsType.getName());
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -180,4 +194,18 @@ public class ProProjectApplyServiceImpl implements IProProjectApplyService
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 新增项目申请
|
||||||
|
*
|
||||||
|
* @param proProjectApply 项目申请
|
||||||
|
* @return 结果
|
||||||
|
*/
|
||||||
|
public int insertMyProProjectApplyDetail(ProProjectApply proProjectApply){
|
||||||
|
ProProjectApply entity = proProjectApplyMapper.selectProProjectApplyById(proProjectApply.getId());
|
||||||
|
entity.setProProjectApplyDetailList(proProjectApply.getProProjectApplyDetailList());
|
||||||
|
insertProProjectApplyDetail(entity);
|
||||||
|
return 1;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -0,0 +1,72 @@
|
||||||
|
<?xml version="1.0" encoding="UTF-8" ?>
|
||||||
|
<!DOCTYPE mapper
|
||||||
|
PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
|
||||||
|
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
|
||||||
|
<mapper namespace="com.yanzhu.project.mapper.ProProjectApplyDetailCheckMapper">
|
||||||
|
|
||||||
|
<resultMap type="ProProjectApplyDetailCheck" id="ProProjectApplyDetailCheckResult">
|
||||||
|
<result property="detailId" column="detail_id" />
|
||||||
|
<result property="checkValue" column="check_value" />
|
||||||
|
<result property="checkPrice" column="check_price" />
|
||||||
|
<result property="createBy" column="create_by" />
|
||||||
|
<result property="createTime" column="create_time" />
|
||||||
|
</resultMap>
|
||||||
|
|
||||||
|
<sql id="selectProProjectApplyDetailCheckVo">
|
||||||
|
select detail_id, check_value, check_price, create_by, create_time from pro_project_apply_detail_check
|
||||||
|
</sql>
|
||||||
|
|
||||||
|
<select id="selectProProjectApplyDetailCheckList" parameterType="ProProjectApplyDetailCheck" resultMap="ProProjectApplyDetailCheckResult">
|
||||||
|
<include refid="selectProProjectApplyDetailCheckVo"/>
|
||||||
|
<where>
|
||||||
|
<if test="detailId != null "> and detail_id = #{detailId}</if>
|
||||||
|
</where>
|
||||||
|
order by create_time desc
|
||||||
|
</select>
|
||||||
|
|
||||||
|
<select id="selectProProjectApplyDetailCheckByDetailId" parameterType="Long" resultMap="ProProjectApplyDetailCheckResult">
|
||||||
|
<include refid="selectProProjectApplyDetailCheckVo"/>
|
||||||
|
where detail_id = #{detailId}
|
||||||
|
order by create_time desc
|
||||||
|
</select>
|
||||||
|
|
||||||
|
<insert id="insertProProjectApplyDetailCheck" parameterType="ProProjectApplyDetailCheck">
|
||||||
|
insert into pro_project_apply_detail_check
|
||||||
|
<trim prefix="(" suffix=")" suffixOverrides=",">
|
||||||
|
<if test="detailId != null">detail_id,</if>
|
||||||
|
<if test="checkValue != null">check_value,</if>
|
||||||
|
<if test="checkPrice != null">check_price,</if>
|
||||||
|
<if test="createBy != null">create_by,</if>
|
||||||
|
<if test="createTime != null">create_time,</if>
|
||||||
|
</trim>
|
||||||
|
<trim prefix="values (" suffix=")" suffixOverrides=",">
|
||||||
|
<if test="detailId != null">#{detailId},</if>
|
||||||
|
<if test="checkValue != null">#{checkValue},</if>
|
||||||
|
<if test="checkPrice != null">#{checkPrice},</if>
|
||||||
|
<if test="createBy != null">#{createBy},</if>
|
||||||
|
<if test="createTime != null">#{createTime},</if>
|
||||||
|
</trim>
|
||||||
|
</insert>
|
||||||
|
|
||||||
|
<update id="updateProProjectApplyDetailCheck" parameterType="ProProjectApplyDetailCheck">
|
||||||
|
update pro_project_apply_detail_check
|
||||||
|
<trim prefix="SET" suffixOverrides=",">
|
||||||
|
<if test="checkValue != null">check_value = #{checkValue},</if>
|
||||||
|
<if test="checkPrice != null">check_price = #{checkPrice},</if>
|
||||||
|
<if test="createBy != null">create_by = #{createBy},</if>
|
||||||
|
<if test="createTime != null">create_time = #{createTime},</if>
|
||||||
|
</trim>
|
||||||
|
where detail_id = #{detailId}
|
||||||
|
</update>
|
||||||
|
|
||||||
|
<delete id="deleteProProjectApplyDetailCheckByDetailId" parameterType="Long">
|
||||||
|
delete from pro_project_apply_detail_check where detail_id = #{detailId}
|
||||||
|
</delete>
|
||||||
|
|
||||||
|
<delete id="deleteProProjectApplyDetailCheckByDetailIds" parameterType="String">
|
||||||
|
delete from pro_project_apply_detail_check where detail_id in
|
||||||
|
<foreach item="detailId" collection="array" open="(" separator="," close=")">
|
||||||
|
#{detailId}
|
||||||
|
</foreach>
|
||||||
|
</delete>
|
||||||
|
</mapper>
|
|
@ -16,9 +16,11 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
|
||||||
<result property="applyFiles" column="apply_files" />
|
<result property="applyFiles" column="apply_files" />
|
||||||
<result property="applyUser" column="apply_user" />
|
<result property="applyUser" column="apply_user" />
|
||||||
<result property="useTime" column="use_time" />
|
<result property="useTime" column="use_time" />
|
||||||
|
<result property="qrPath" column="qr_path" />
|
||||||
<result property="isDel" column="is_del" />
|
<result property="isDel" column="is_del" />
|
||||||
<result property="createByDeptName" column="createByDeptName" />
|
<result property="createByDeptName" column="createByDeptName" />
|
||||||
<result property="createBy" column="create_by" />
|
<result property="createBy" column="create_by" />
|
||||||
|
<result property="createByName" column="create_by_name" />
|
||||||
<result property="createTime" column="create_time" />
|
<result property="createTime" column="create_time" />
|
||||||
<result property="updateBy" column="update_by" />
|
<result property="updateBy" column="update_by" />
|
||||||
<result property="updateTime" column="update_time" />
|
<result property="updateTime" column="update_time" />
|
||||||
|
@ -45,6 +47,9 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
|
||||||
<result property="useReason" column="sub_use_reason" />
|
<result property="useReason" column="sub_use_reason" />
|
||||||
<result property="price" column="sub_price" />
|
<result property="price" column="sub_price" />
|
||||||
<result property="totalPrice" column="sub_total_price" />
|
<result property="totalPrice" column="sub_total_price" />
|
||||||
|
<result property="pushType" column="sub_push_type" />
|
||||||
|
<result property="checkedTotalValue" column="sub_checked_total_value" />
|
||||||
|
<result property="isChecked" column="sub_is_checked" />
|
||||||
<result property="isDel" column="sub_is_del" />
|
<result property="isDel" column="sub_is_del" />
|
||||||
<result property="createBy" column="sub_create_by" />
|
<result property="createBy" column="sub_create_by" />
|
||||||
<result property="createTime" column="sub_create_time" />
|
<result property="createTime" column="sub_create_time" />
|
||||||
|
@ -54,33 +59,53 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
|
||||||
</resultMap>
|
</resultMap>
|
||||||
|
|
||||||
<sql id="selectProProjectApplyVo">
|
<sql id="selectProProjectApplyVo">
|
||||||
select id, dept_id, proj_id, proj_name, par_proj_name, apply_type, apply_status, apply_reason, apply_files, apply_user, use_time, is_del, create_by, create_time, update_by, update_time, remark from pro_project_apply
|
select pa.id, pa.dept_id, sd.dept_name as createByDeptName, pa.proj_id, pa.proj_name, pa.par_proj_name, pa.apply_type, pa.apply_status, pa.apply_reason, pa.apply_files, pa.apply_user, pa.use_time, pa.qr_path, pa.is_del, pa.create_by, pa.create_time, pa.update_by, pa.update_time, pa.remark from pro_project_apply pa
|
||||||
|
left join sys_dept sd on sd.dept_id = pa.dept_id
|
||||||
</sql>
|
</sql>
|
||||||
|
|
||||||
<select id="selectProProjectApplyList" parameterType="ProProjectApply" resultMap="ProProjectApplyResult">
|
<select id="selectProProjectApplyList" parameterType="ProProjectApply" resultMap="ProProjectApplyResult">
|
||||||
<include refid="selectProProjectApplyVo"/>
|
<include refid="selectProProjectApplyVo"/>
|
||||||
<where>
|
<where>
|
||||||
<if test="deptId != null "> and dept_id = #{deptId}</if>
|
<if test="deptId != null "> and pa.dept_id = #{deptId}</if>
|
||||||
<if test="projId != null "> and proj_id = #{projId}</if>
|
<if test="projId != null "> and pa.proj_id = #{projId}</if>
|
||||||
<if test="projName != null and projName != ''"> and proj_name like concat('%', #{projName}, '%')</if>
|
<if test="projName != null and projName != ''"> and pa.proj_name like concat('%', #{projName}, '%')</if>
|
||||||
<if test="parProjName != null and parProjName != ''"> and par_proj_name like concat('%', #{parProjName}, '%')</if>
|
<if test="parProjName != null and parProjName != ''"> and pa.par_proj_name like concat('%', #{parProjName}, '%')</if>
|
||||||
<if test="applyType != null and applyType != ''"> and apply_type = #{applyType}</if>
|
<if test="applyType != null and applyType != ''"> and pa.apply_type = #{applyType}</if>
|
||||||
<if test="applyStatus != null and applyStatus != ''"> and apply_status = #{applyStatus}</if>
|
<if test="applyStatus != null and applyStatus != ''"> and pa.apply_status = #{applyStatus}</if>
|
||||||
<if test="applyUser != null "> and apply_user = #{applyUser}</if>
|
<if test="applyUser != null "> and pa.apply_user = #{applyUser}</if>
|
||||||
<if test="useTime != null "> and use_time = #{useTime}</if>
|
<if test="useTime != null "> and pa.use_time = #{useTime}</if>
|
||||||
<if test="isDel != null and isDel != ''"> and is_del = #{isDel}</if>
|
<if test="isDel != null and isDel != ''"> and pa.is_del = #{isDel}</if>
|
||||||
|
<if test="deptAncestors != null and deptAncestors != ''"> and find_in_set(pa.dept_id, #{deptAncestors})</if>
|
||||||
</where>
|
</where>
|
||||||
|
order by pa.id desc
|
||||||
</select>
|
</select>
|
||||||
|
|
||||||
<select id="selectProProjectApplyById" parameterType="Long" resultMap="ProProjectApplyProProjectApplyDetailResult">
|
<select id="selectProProjectApplyById" parameterType="Long" resultMap="ProProjectApplyProProjectApplyDetailResult">
|
||||||
select a.id, a.dept_id, a.proj_id, a.proj_name, a.par_proj_name, a.apply_type, a.apply_status, a.apply_reason, a.apply_files, a.apply_user, a.use_time, a.is_del, sd.dept_name as createByDeptName, a.create_by, a.create_time, a.update_by, a.update_time, a.remark,
|
select a.id, a.dept_id, a.proj_id, a.proj_name, a.par_proj_name, a.apply_type, a.apply_status, a.apply_reason, a.apply_files, a.apply_user, a.use_time, a.qr_path, a.is_del, sd.dept_name as createByDeptName, a.create_by, a.create_time, a.update_by, a.update_time, a.remark,
|
||||||
b.id as sub_id, b.apply_id as sub_apply_id, b.super_type_key as sub_super_type_key, b.super_type_name as sub_super_type_name, b.type_id as sub_type_id, b.type_name as sub_type_name, b.assets_id as sub_assets_id, b.assets_name as sub_assets_name, b.assets_version as sub_assets_version, b.assets_unit as sub_assets_unit, b.number as sub_number, b.use_time as sub_use_time, b.use_reason as sub_use_reason, b.price as sub_price, b.total_price as sub_total_price, b.is_del as sub_is_del, b.create_by as sub_create_by, b.create_time as sub_create_time, b.update_by as sub_update_by, b.update_time as sub_update_time, b.remark as sub_remark
|
b.id as sub_id, b.apply_id as sub_apply_id, b.super_type_key as sub_super_type_key, b.super_type_name as sub_super_type_name, b.type_id as sub_type_id, b.type_name as sub_type_name, b.assets_id as sub_assets_id, b.assets_name as sub_assets_name, b.assets_version as sub_assets_version, b.assets_unit as sub_assets_unit, b.number as sub_number, b.use_time as sub_use_time, b.use_reason as sub_use_reason, b.price as sub_price, b.total_price as sub_total_price, b.push_type as sub_push_type, b.checked_total_value as sub_checked_total_value, b.is_checked as sub_is_checked, b.is_del as sub_is_del, b.create_by as sub_create_by, b.create_time as sub_create_time, b.update_by as sub_update_by, b.update_time as sub_update_time, b.remark as sub_remark
|
||||||
from pro_project_apply a
|
from pro_project_apply a
|
||||||
left join sys_dept sd on a.dept_id = sd.dept_id
|
left join sys_dept sd on a.dept_id = sd.dept_id
|
||||||
left join pro_project_apply_detail b on b.apply_id = a.id
|
left join pro_project_apply_detail b on b.apply_id = a.id
|
||||||
where a.id = #{id}
|
where a.id = #{id}
|
||||||
</select>
|
</select>
|
||||||
|
|
||||||
|
<select id="findGroupCountByStatus" parameterType="ProProjectApply" resultType="Map">
|
||||||
|
select pa.apply_status as applyStatus, count(1) as total from pro_project_apply pa
|
||||||
|
<where>
|
||||||
|
pa.apply_status != '1'
|
||||||
|
<if test="deptId != null "> and pa.dept_id = #{deptId}</if>
|
||||||
|
<if test="projId != null "> and pa.proj_id = #{projId}</if>
|
||||||
|
<if test="projName != null and projName != ''"> and pa.proj_name like concat('%', #{projName}, '%')</if>
|
||||||
|
<if test="parProjName != null and parProjName != ''"> and pa.par_proj_name like concat('%', #{parProjName}, '%')</if>
|
||||||
|
<if test="applyType != null and applyType != ''"> and pa.apply_type = #{applyType}</if>
|
||||||
|
<if test="applyUser != null "> and pa.apply_user = #{applyUser}</if>
|
||||||
|
<if test="useTime != null "> and pa.use_time = #{useTime}</if>
|
||||||
|
<if test="isDel != null and isDel != ''"> and pa.is_del = #{isDel}</if>
|
||||||
|
<if test="deptAncestors != null and deptAncestors != ''"> and find_in_set(pa.dept_id, #{deptAncestors})</if>
|
||||||
|
</where>
|
||||||
|
group by pa.apply_status
|
||||||
|
</select>
|
||||||
|
|
||||||
<insert id="insertProProjectApply" parameterType="ProProjectApply" useGeneratedKeys="true" keyProperty="id">
|
<insert id="insertProProjectApply" parameterType="ProProjectApply" useGeneratedKeys="true" keyProperty="id">
|
||||||
insert into pro_project_apply
|
insert into pro_project_apply
|
||||||
<trim prefix="(" suffix=")" suffixOverrides=",">
|
<trim prefix="(" suffix=")" suffixOverrides=",">
|
||||||
|
@ -94,6 +119,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
|
||||||
<if test="applyFiles != null">apply_files,</if>
|
<if test="applyFiles != null">apply_files,</if>
|
||||||
<if test="applyUser != null">apply_user,</if>
|
<if test="applyUser != null">apply_user,</if>
|
||||||
<if test="useTime != null">use_time,</if>
|
<if test="useTime != null">use_time,</if>
|
||||||
|
<if test="qrPath != null">qr_path,</if>
|
||||||
<if test="isDel != null">is_del,</if>
|
<if test="isDel != null">is_del,</if>
|
||||||
<if test="createBy != null">create_by,</if>
|
<if test="createBy != null">create_by,</if>
|
||||||
<if test="createTime != null">create_time,</if>
|
<if test="createTime != null">create_time,</if>
|
||||||
|
@ -112,6 +138,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
|
||||||
<if test="applyFiles != null">#{applyFiles},</if>
|
<if test="applyFiles != null">#{applyFiles},</if>
|
||||||
<if test="applyUser != null">#{applyUser},</if>
|
<if test="applyUser != null">#{applyUser},</if>
|
||||||
<if test="useTime != null">#{useTime},</if>
|
<if test="useTime != null">#{useTime},</if>
|
||||||
|
<if test="qrPath != null">#{qrPath},</if>
|
||||||
<if test="isDel != null">#{isDel},</if>
|
<if test="isDel != null">#{isDel},</if>
|
||||||
<if test="createBy != null">#{createBy},</if>
|
<if test="createBy != null">#{createBy},</if>
|
||||||
<if test="createTime != null">#{createTime},</if>
|
<if test="createTime != null">#{createTime},</if>
|
||||||
|
@ -134,6 +161,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
|
||||||
<if test="applyFiles != null">apply_files = #{applyFiles},</if>
|
<if test="applyFiles != null">apply_files = #{applyFiles},</if>
|
||||||
<if test="applyUser != null">apply_user = #{applyUser},</if>
|
<if test="applyUser != null">apply_user = #{applyUser},</if>
|
||||||
<if test="useTime != null">use_time = #{useTime},</if>
|
<if test="useTime != null">use_time = #{useTime},</if>
|
||||||
|
<if test="qrPath != null">qr_path = #{qrPath},</if>
|
||||||
<if test="isDel != null">is_del = #{isDel},</if>
|
<if test="isDel != null">is_del = #{isDel},</if>
|
||||||
<if test="createBy != null">create_by = #{createBy},</if>
|
<if test="createBy != null">create_by = #{createBy},</if>
|
||||||
<if test="createTime != null">create_time = #{createTime},</if>
|
<if test="createTime != null">create_time = #{createTime},</if>
|
||||||
|
@ -167,9 +195,23 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
|
||||||
</delete>
|
</delete>
|
||||||
|
|
||||||
<insert id="batchProProjectApplyDetail">
|
<insert id="batchProProjectApplyDetail">
|
||||||
insert into pro_project_apply_detail( id, apply_id, super_type_key, super_type_name, type_id, type_name, assets_id, assets_name, assets_unit, assets_version, number, use_time, use_reason, price, total_price, is_del, create_by, create_time, update_by, update_time, remark) values
|
insert into pro_project_apply_detail( id, apply_id, super_type_key, super_type_name, type_id, type_name, assets_id, assets_name, assets_unit, assets_version, number, use_time, use_reason, price, total_price, push_type, is_checked, is_del, create_by, create_time, update_by, update_time, remark) values
|
||||||
<foreach item="item" index="index" collection="list" separator=",">
|
<foreach item="item" index="index" collection="list" separator=",">
|
||||||
( #{item.id}, #{item.applyId}, #{item.superTypeKey}, #{item.superTypeName}, #{item.typeId}, #{item.typeName}, #{item.assetsId}, #{item.assetsName}, #{item.assetsVersion}, #{item.assetsUnit}, #{item.number}, #{item.useTime}, #{item.useReason}, #{item.price}, #{item.totalPrice}, #{item.isDel}, #{item.createBy}, #{item.createTime}, #{item.updateBy}, #{item.updateTime}, #{item.remark})
|
( #{item.id}, #{item.applyId}, #{item.superTypeKey}, #{item.superTypeName}, #{item.typeId}, #{item.typeName}, #{item.assetsId}, #{item.assetsName}, #{item.assetsUnit}, #{item.assetsVersion}, #{item.number}, #{item.useTime}, #{item.useReason}, #{item.price}, #{item.totalPrice}, #{item.pushType}, #{item.isChecked}, #{item.isDel}, #{item.createBy}, #{item.createTime}, #{item.updateBy}, #{item.updateTime}, #{item.remark})
|
||||||
</foreach>
|
</foreach>
|
||||||
</insert>
|
</insert>
|
||||||
|
|
||||||
|
<select id="selectProProjectApplyDetailById" parameterType="Long" resultMap="ProProjectApplyDetailResult">
|
||||||
|
select * from pro_project_apply_detail where id = #{id}
|
||||||
|
</select>
|
||||||
|
|
||||||
|
<update id="updateProProjectApplyDetail" parameterType="ProProjectApplyDetail">
|
||||||
|
update pro_project_apply_detail
|
||||||
|
<trim prefix="SET" suffixOverrides=",">
|
||||||
|
<if test="checkedTotalValue != null">checked_total_value = #{checkedTotalValue},</if>
|
||||||
|
<if test="isChecked != null">is_checked = #{isChecked},</if>
|
||||||
|
</trim>
|
||||||
|
where id = #{id}
|
||||||
|
</update>
|
||||||
|
|
||||||
</mapper>
|
</mapper>
|
|
@ -117,4 +117,12 @@ public interface SysDeptMapper
|
||||||
public int deleteDeptById(Long deptId);
|
public int deleteDeptById(Long deptId);
|
||||||
|
|
||||||
public int deleteDeepDeptById(Long deptId);
|
public int deleteDeepDeptById(Long deptId);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 根据部门ID查询信息
|
||||||
|
*
|
||||||
|
* @param ids 部门ID
|
||||||
|
* @return 部门信息
|
||||||
|
*/
|
||||||
|
public List<SysDept> selectParentDeptByIds(List<Long> ids);
|
||||||
}
|
}
|
||||||
|
|
|
@ -150,4 +150,12 @@ public interface ISysDeptService
|
||||||
* @return
|
* @return
|
||||||
*/
|
*/
|
||||||
public int inertSubProject(SysDept dept);
|
public int inertSubProject(SysDept dept);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 根据部门ID查询信息
|
||||||
|
*
|
||||||
|
* @param ids 部门ID
|
||||||
|
* @return 部门信息
|
||||||
|
*/
|
||||||
|
public List<SysDept> selectParentDeptByIds(List<Long> ids);
|
||||||
}
|
}
|
||||||
|
|
|
@ -413,5 +413,14 @@ public class SysDeptServiceImpl implements ISysDeptService
|
||||||
return deptMapper.deleteDeepDeptById(deptId);
|
return deptMapper.deleteDeepDeptById(deptId);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 根据部门ID查询信息
|
||||||
|
*
|
||||||
|
* @param ids 部门ID
|
||||||
|
* @return 部门信息
|
||||||
|
*/
|
||||||
|
@Override
|
||||||
|
public List<SysDept> selectParentDeptByIds(List<Long> ids){
|
||||||
|
return deptMapper.selectParentDeptByIds(ids);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -53,16 +53,11 @@
|
||||||
<if test="assigneeId != null and assigneeId != '' and roleIds !=null and roleIds.size()>0">
|
<if test="assigneeId != null and assigneeId != '' and roleIds !=null and roleIds.size()>0">
|
||||||
AND (fa.ASSIGNEE_ = #{assigneeId}
|
AND (fa.ASSIGNEE_ = #{assigneeId}
|
||||||
OR (
|
OR (
|
||||||
fa.ASSIGNEE_ IS NULL
|
fa.ASSIGNEE_ IS NULL
|
||||||
AND (
|
AND fa.GROUP_ID_ IN
|
||||||
fa.USER_ID_ = #{assigneeId}
|
<foreach collection="roleIds" item="roleId" open="(" separator="," close=")">
|
||||||
OR (
|
#{roleId}
|
||||||
fa.GROUP_ID_ IN
|
</foreach>
|
||||||
<foreach collection="roleIds" item="roleId" open="(" separator="," close=")">
|
|
||||||
#{roleId}
|
|
||||||
</foreach>
|
|
||||||
)
|
|
||||||
)
|
|
||||||
)
|
)
|
||||||
)
|
)
|
||||||
</if>
|
</if>
|
||||||
|
|
|
@ -170,4 +170,14 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
|
||||||
<delete id="deleteDeepDeptById" parameterType="Long">
|
<delete id="deleteDeepDeptById" parameterType="Long">
|
||||||
update sys_dept set del_flag = '2' where parent_id =#{deptId} or dept_id = #{deptId}
|
update sys_dept set del_flag = '2' where parent_id =#{deptId} or dept_id = #{deptId}
|
||||||
</delete>
|
</delete>
|
||||||
|
|
||||||
|
<select id="selectParentDeptByIds" parameterType="list" resultMap="SysDeptResult">
|
||||||
|
select * from sys_dept where status = 0 and del_flag = '0' and level=300
|
||||||
|
and dept_id in
|
||||||
|
<foreach collection="ids" item="item" index="index" open="(" close=")" separator=",">
|
||||||
|
#{item}
|
||||||
|
</foreach>
|
||||||
|
order by id desc
|
||||||
|
</select>
|
||||||
|
|
||||||
</mapper>
|
</mapper>
|
|
@ -8,7 +8,7 @@ import { isRelogin } from '@/utils/request'
|
||||||
|
|
||||||
NProgress.configure({ showSpinner: false })
|
NProgress.configure({ showSpinner: false })
|
||||||
|
|
||||||
const whiteList = ['/login', '/register']
|
const whiteList = ['/login', '/register', "/ApplyDetail"]
|
||||||
|
|
||||||
router.beforeEach((to, from, next) => {
|
router.beforeEach((to, from, next) => {
|
||||||
NProgress.start()
|
NProgress.start()
|
||||||
|
|
|
@ -61,6 +61,11 @@ export const constantRoutes = [
|
||||||
component: () => import('@/views/error/401'),
|
component: () => import('@/views/error/401'),
|
||||||
hidden: true
|
hidden: true
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
path: '/ApplyDetail',
|
||||||
|
component: () => import('@/views/ApplyDetail/index'),
|
||||||
|
hidden: true
|
||||||
|
},
|
||||||
{
|
{
|
||||||
path: '',
|
path: '',
|
||||||
component: Layout,
|
component: Layout,
|
||||||
|
|
|
@ -0,0 +1,234 @@
|
||||||
|
<template>
|
||||||
|
<div class="app-container">
|
||||||
|
<div class="inspect_max">
|
||||||
|
<div class="inspect_list" v-if="dataList.length > 0">
|
||||||
|
<div class="inspect_for" v-for="(item, index) in dataList">
|
||||||
|
<div class="inspect_for_bgd">
|
||||||
|
<div class="inspect_list_title">
|
||||||
|
<div class="inspect_list_title_label inspect_list_title_width">
|
||||||
|
<div class="inspect_list_title_number">
|
||||||
|
{{ index < 9 ? "0" + (index + 1) : index + 1 }}
|
||||||
|
</div>
|
||||||
|
<div class="module_title module_title_flex inspect_list_title_text">
|
||||||
|
{{ dataInfo.useTime }}
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="inspect_shtg">
|
||||||
|
<div class="inspect_list_info_details">
|
||||||
|
<div class="inspect_list_info_data">
|
||||||
|
<div class="inspect_list_info_data_prop">
|
||||||
|
采购项目:{{ dataInfo.projName }}
|
||||||
|
</div>
|
||||||
|
<div class="inspect_list_info_data_prop">
|
||||||
|
采购内容:{{ item.typeName + " > " + item.assetsName }}
|
||||||
|
</div>
|
||||||
|
<div class="inspect_list_info_data_prop">
|
||||||
|
采购数量:{{ item.number + " " + item.assetsUnit }}
|
||||||
|
</div>
|
||||||
|
<div class="inspect_list_info_data_prop" v-if="item.assetsVersion">
|
||||||
|
规格型号:{{ item.assetsVersion }}
|
||||||
|
</div>
|
||||||
|
<div class="inspect_list_info_data_prop" v-if="item.checkedTotalValue">
|
||||||
|
验收数量:{{ item.checkedTotalValue }}
|
||||||
|
<el-tag size="small">{{ item.assetsUnit }}</el-tag>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="inspect_list_info_position">使用原因:{{ item.useReason }}</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div v-if="dataList.length == 0">
|
||||||
|
<div style="padding-top: 70px; text-align: -webkit-center">
|
||||||
|
<el-image
|
||||||
|
src="https://szgcwx.jhncidg.com/staticFiles/nodata.png"
|
||||||
|
style="width: 200px; height: 135px"
|
||||||
|
></el-image>
|
||||||
|
<div style="color: #a5abbb; margin-top: 20px">暂 无 投 诉 信 息</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</template>
|
||||||
|
|
||||||
|
<script>
|
||||||
|
import { getProjectApply } from "@/api/project/projectApply";
|
||||||
|
export default {
|
||||||
|
name: "ApplyDetail",
|
||||||
|
data() {
|
||||||
|
return {
|
||||||
|
dataInfo: {},
|
||||||
|
dataList: [],
|
||||||
|
};
|
||||||
|
},
|
||||||
|
created() {
|
||||||
|
this.getList();
|
||||||
|
},
|
||||||
|
methods: {
|
||||||
|
getList() {
|
||||||
|
let queryParams = this.$route.query; // 获取查询参数对象
|
||||||
|
let applyId = queryParams.applyId;
|
||||||
|
getProjectApply(applyId).then((response) => {
|
||||||
|
this.dataInfo = response.data;
|
||||||
|
this.dataList = response.data.proProjectApplyDetailList || [];
|
||||||
|
});
|
||||||
|
},
|
||||||
|
},
|
||||||
|
};
|
||||||
|
</script>
|
||||||
|
<style scope>
|
||||||
|
.app-container {
|
||||||
|
height: 100%;
|
||||||
|
background-image: url("https://szgc.jhncidg.com/profile/static/bg.png");
|
||||||
|
background-size: 100% 100%;
|
||||||
|
}
|
||||||
|
.el-form--label-top .el-form-item__label {
|
||||||
|
padding: 0 !important;
|
||||||
|
}
|
||||||
|
.el-input__suffix {
|
||||||
|
right: 10px !important;
|
||||||
|
}
|
||||||
|
.el-alert {
|
||||||
|
display: flex !important;
|
||||||
|
}
|
||||||
|
.el-alert--info.is-light {
|
||||||
|
background: cornflowerblue !important;
|
||||||
|
color: #ffffff !important;
|
||||||
|
}
|
||||||
|
.el-alert--info .el-alert__description {
|
||||||
|
color: #ffffff !important;
|
||||||
|
}
|
||||||
|
.el-select-dropdown {
|
||||||
|
left: 20px !important;
|
||||||
|
right: 20px !important;
|
||||||
|
}
|
||||||
|
.sel {
|
||||||
|
width: 100%;
|
||||||
|
}
|
||||||
|
.el-alert__closebtn {
|
||||||
|
color: #f3cd46 !important;
|
||||||
|
font-weight: 900 !important;
|
||||||
|
}
|
||||||
|
.el-result__title {
|
||||||
|
font-weight: 900 !important;
|
||||||
|
}
|
||||||
|
.el-result__extra {
|
||||||
|
width: 100% !important;
|
||||||
|
}
|
||||||
|
.inspect_max {
|
||||||
|
padding: 0;
|
||||||
|
}
|
||||||
|
.inspect_list {
|
||||||
|
padding: 5px 0;
|
||||||
|
}
|
||||||
|
.inspect_for {
|
||||||
|
padding: 10px 0;
|
||||||
|
font-size: 13px;
|
||||||
|
}
|
||||||
|
.inspect_for_bgd {
|
||||||
|
background: #d3e0ed;
|
||||||
|
padding: 0 15px;
|
||||||
|
border-radius: 5px 5px 0 0;
|
||||||
|
}
|
||||||
|
.inspect_list_title {
|
||||||
|
border-bottom: 1px solid #323b86;
|
||||||
|
height: 40px;
|
||||||
|
display: flex;
|
||||||
|
justify-content: space-between;
|
||||||
|
align-items: center;
|
||||||
|
font-weight: 900;
|
||||||
|
}
|
||||||
|
.inspect_list_title_label {
|
||||||
|
display: flex;
|
||||||
|
align-items: center;
|
||||||
|
width: calc(100% - 75px);
|
||||||
|
}
|
||||||
|
.inspect_list_title_width {
|
||||||
|
width: 100%;
|
||||||
|
}
|
||||||
|
.inspect_list_title_number {
|
||||||
|
width: 40px;
|
||||||
|
height: 40px;
|
||||||
|
border-bottom: 1px solid #000000;
|
||||||
|
text-align: center;
|
||||||
|
line-height: 40px;
|
||||||
|
color: #000000;
|
||||||
|
}
|
||||||
|
.inspect_list_title_text {
|
||||||
|
width: calc(100% - 40px);
|
||||||
|
white-space: nowrap;
|
||||||
|
text-overflow: ellipsis;
|
||||||
|
overflow: hidden;
|
||||||
|
}
|
||||||
|
.module_title_flex {
|
||||||
|
display: flex;
|
||||||
|
align-items: center;
|
||||||
|
justify-content: space-between;
|
||||||
|
}
|
||||||
|
.module_title {
|
||||||
|
height: 20px;
|
||||||
|
line-height: 20px;
|
||||||
|
padding-left: 20px;
|
||||||
|
background: url("https://szgcwx.jhncidg.com/staticFiles/images/lw_8.png") no-repeat
|
||||||
|
left/17px;
|
||||||
|
}
|
||||||
|
.inspect_shtg {
|
||||||
|
padding: 15px 3px;
|
||||||
|
background-size: 80px 80px !important;
|
||||||
|
background: url("https://szgcwx.jhncidg.com/staticFiles/images/shtg.png") no-repeat top
|
||||||
|
10px right;
|
||||||
|
}
|
||||||
|
.inspect_list_info_details {
|
||||||
|
display: flex;
|
||||||
|
align-items: center;
|
||||||
|
}
|
||||||
|
.inspect_list_info_data {
|
||||||
|
width: 100%;
|
||||||
|
}
|
||||||
|
.inspect_list_info_data_prop {
|
||||||
|
padding: 5px 0;
|
||||||
|
word-break: break-all;
|
||||||
|
}
|
||||||
|
.inspect_list_info_position {
|
||||||
|
padding-bottom: 2px;
|
||||||
|
}
|
||||||
|
.button-active {
|
||||||
|
color: #ffffff;
|
||||||
|
width: 90% !important;
|
||||||
|
background-color: #1890ff !important;
|
||||||
|
border-color: #1890ff !important;
|
||||||
|
}
|
||||||
|
.button-dis {
|
||||||
|
color: #000000;
|
||||||
|
width: 90% !important;
|
||||||
|
background-color: #e6ebf5 !important;
|
||||||
|
border-color: #e6ebf5 !important;
|
||||||
|
}
|
||||||
|
.block {
|
||||||
|
border-radius: 5px;
|
||||||
|
}
|
||||||
|
.el-timeline {
|
||||||
|
padding-left: 5px !important;
|
||||||
|
}
|
||||||
|
.el-timeline-item__wrapper {
|
||||||
|
padding-left: 15px !important;
|
||||||
|
}
|
||||||
|
.el-timeline-item__content {
|
||||||
|
font-weight: 900;
|
||||||
|
}
|
||||||
|
.el-card {
|
||||||
|
border: 0px !important;
|
||||||
|
background-color: #d3e0ed !important;
|
||||||
|
}
|
||||||
|
.el-card__body {
|
||||||
|
border: 0px !important;
|
||||||
|
padding: 0px !important;
|
||||||
|
padding-right: 10px !important;
|
||||||
|
font-weight: 500 !important;
|
||||||
|
}
|
||||||
|
.el-image {
|
||||||
|
margin-right: 6px !important;
|
||||||
|
}
|
||||||
|
</style>
|
Loading…
Reference in New Issue