Commit a7259d68 authored by 王晓倩's avatar 王晓倩

转移支付

parent 2f83650f
package com.zehong.web.controller.transaction;
import java.util.List;
import org.springframework.security.access.prepost.PreAuthorize;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.PutMapping;
import org.springframework.web.bind.annotation.DeleteMapping;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import com.zehong.common.annotation.Log;
import com.zehong.common.core.controller.BaseController;
import com.zehong.common.core.domain.AjaxResult;
import com.zehong.common.enums.BusinessType;
import com.zehong.system.domain.TTradeChangeInfo;
import com.zehong.system.service.ITTradeChangeInfoService;
import com.zehong.common.utils.poi.ExcelUtil;
import com.zehong.common.core.page.TableDataInfo;
/**
* 交易项目转移信息Controller
*
* @author zehong
* @date 2023-09-12
*/
@RestController
@RequestMapping("/trade/changeInfo")
public class TTradeChangeInfoController extends BaseController
{
@Autowired
private ITTradeChangeInfoService tTradeChangeInfoService;
/**
* 查询交易项目转移信息列表
*/
@GetMapping("/list")
public TableDataInfo list(TTradeChangeInfo tTradeChangeInfo)
{
startPage();
List<TTradeChangeInfo> list = tTradeChangeInfoService.selectTTradeChangeInfoList(tTradeChangeInfo);
return getDataTable(list);
}
/**
* 导出交易项目转移信息列表
*/
@Log(title = "交易项目转移信息", businessType = BusinessType.EXPORT)
@GetMapping("/export")
public AjaxResult export(TTradeChangeInfo tTradeChangeInfo)
{
List<TTradeChangeInfo> list = tTradeChangeInfoService.selectTTradeChangeInfoList(tTradeChangeInfo);
ExcelUtil<TTradeChangeInfo> util = new ExcelUtil<TTradeChangeInfo>(TTradeChangeInfo.class);
return util.exportExcel(list, "交易项目转移信息数据");
}
/**
* 获取交易项目转移信息详细信息
*/
@GetMapping(value = "/{changeId}")
public AjaxResult getInfo(@PathVariable("changeId") Long changeId)
{
return AjaxResult.success(tTradeChangeInfoService.selectTTradeChangeInfoById(changeId));
}
/**
* 新增交易项目转移信息
*/
@Log(title = "交易项目转移信息", businessType = BusinessType.INSERT)
@PostMapping
public AjaxResult add(@RequestBody TTradeChangeInfo tTradeChangeInfo)
{
return toAjax(tTradeChangeInfoService.insertTTradeChangeInfo(tTradeChangeInfo));
}
/**
* 修改交易项目转移信息
*/
@Log(title = "交易项目转移信息", businessType = BusinessType.UPDATE)
@PutMapping
public AjaxResult edit(@RequestBody TTradeChangeInfo tTradeChangeInfo)
{
return toAjax(tTradeChangeInfoService.updateTTradeChangeInfo(tTradeChangeInfo));
}
/**
* 删除交易项目转移信息
*/
@Log(title = "交易项目转移信息", businessType = BusinessType.DELETE)
@DeleteMapping("/{changeIds}")
public AjaxResult remove(@PathVariable Long[] changeIds)
{
return toAjax(tTradeChangeInfoService.deleteTTradeChangeInfoByIds(changeIds));
}
}
package com.zehong.system.domain;
import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.zehong.common.annotation.Excel;
import com.zehong.common.core.domain.BaseEntity;
/**
* 交易项目转移信息对象 t_trade_change_info
*
* @author zehong
* @date 2023-09-12
*/
public class TTradeChangeInfo extends BaseEntity
{
private static final long serialVersionUID = 1L;
/** 转移主键 */
private Long changeId;
/** 关联交易单 */
@Excel(name = "关联交易单")
private Long relationTradeId;
/** 原交易经办人 */
@Excel(name = "原交易经办人")
private Long originalTradeTransactorId;
/** 原交易部门 */
@Excel(name = "原交易部门")
private Long originalTradeDeptId;
/** 新交易经办人 */
@Excel(name = "新交易经办人")
private Long newTradeTransactorId;
/** 新交易部门 */
@Excel(name = "新交易部门")
private Long newTradeDeptId;
private String originalTradeTransactorName;
private String originalTradeDeptName;
private String newTradeTransactorName;
private String newTradeDeptName;
/** 转移时间 */
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
@Excel(name = "转移时间", width = 30, dateFormat = "yyyy-MM-dd")
private Date changeTime;
public void setChangeId(Long changeId)
{
this.changeId = changeId;
}
public Long getChangeId()
{
return changeId;
}
public void setRelationTradeId(Long relationTradeId)
{
this.relationTradeId = relationTradeId;
}
public Long getRelationTradeId()
{
return relationTradeId;
}
public void setOriginalTradeTransactorId(Long originalTradeTransactorId)
{
this.originalTradeTransactorId = originalTradeTransactorId;
}
public Long getOriginalTradeTransactorId()
{
return originalTradeTransactorId;
}
public void setOriginalTradeDeptId(Long originalTradeDeptId)
{
this.originalTradeDeptId = originalTradeDeptId;
}
public Long getOriginalTradeDeptId()
{
return originalTradeDeptId;
}
public void setNewTradeTransactorId(Long newTradeTransactorId)
{
this.newTradeTransactorId = newTradeTransactorId;
}
public Long getNewTradeTransactorId()
{
return newTradeTransactorId;
}
public void setNewTradeDeptId(Long newTradeDeptId)
{
this.newTradeDeptId = newTradeDeptId;
}
public Long getNewTradeDeptId()
{
return newTradeDeptId;
}
public void setChangeTime(Date changeTime)
{
this.changeTime = changeTime;
}
public Date getChangeTime()
{
return changeTime;
}
public String getOriginalTradeTransactorName() {
return originalTradeTransactorName;
}
public void setOriginalTradeTransactorName(String originalTradeTransactorName) {
this.originalTradeTransactorName = originalTradeTransactorName;
}
public String getOriginalTradeDeptName() {
return originalTradeDeptName;
}
public void setOriginalTradeDeptName(String originalTradeDeptName) {
this.originalTradeDeptName = originalTradeDeptName;
}
public String getNewTradeTransactorName() {
return newTradeTransactorName;
}
public void setNewTradeTransactorName(String newTradeTransactorName) {
this.newTradeTransactorName = newTradeTransactorName;
}
public String getNewTradeDeptName() {
return newTradeDeptName;
}
public void setNewTradeDeptName(String newTradeDeptName) {
this.newTradeDeptName = newTradeDeptName;
}
@Override
public String toString() {
return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
.append("changeId", getChangeId())
.append("relationTradeId", getRelationTradeId())
.append("originalTradeTransactorId", getOriginalTradeTransactorId())
.append("originalTradeDeptId", getOriginalTradeDeptId())
.append("newTradeTransactorId", getNewTradeTransactorId())
.append("newTradeDeptId", getNewTradeDeptId())
.append("remark", getRemark())
.append("changeTime", getChangeTime())
.toString();
}
}
...@@ -73,7 +73,7 @@ public class TTradeProject extends BaseEntity ...@@ -73,7 +73,7 @@ public class TTradeProject extends BaseEntity
private Long tradeDeptManagerId; private Long tradeDeptManagerId;
/** 结算时间 */ /** 结算时间 */
@JsonFormat(pattern = "yyyy-MM-dd") @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
@Excel(name = "结算时间", width = 30, dateFormat = "yyyy-MM-dd") @Excel(name = "结算时间", width = 30, dateFormat = "yyyy-MM-dd")
private Date settlementTime; private Date settlementTime;
...@@ -103,9 +103,42 @@ public class TTradeProject extends BaseEntity ...@@ -103,9 +103,42 @@ public class TTradeProject extends BaseEntity
private String tradeDeptName; private String tradeDeptName;
/**查询类型:all全部 myApply我申请的 myApproval我的审批*/ /**查询类型:all全部 myApply我申请的 myApproval我的审批 myChange我转移的*/
private String queryType; private String queryType;
/**当前用户id*/
private Long userId;
/**首次转移人*/
private Long changeBy1st;
/**二次转移人*/
private Long changeBy2nd;
/**三次转移人*/
private Long changeBy3rd;
/** 转移次数*/
private int changeCount;
private String changeBy1stName;
private String changeBy2ndName;
private String changeBy3rdName;
private String changeBy1stDeptId;
private String changeBy2ndDeptId;
private String changeBy3rdDeptId;
private String changeBy1stDeptName;
private String changeBy2ndDeptName;
private String changeBy3rdDeptName;
private String tradeDeptManagerName; private String tradeDeptManagerName;
private String dealRemark; private String dealRemark;
...@@ -116,6 +149,8 @@ public class TTradeProject extends BaseEntity ...@@ -116,6 +149,8 @@ public class TTradeProject extends BaseEntity
private Long queryTradeDeptId; private Long queryTradeDeptId;
private Long queryChangeDeptId;
private String transactionDetailName; private String transactionDetailName;
private String relationTransactionProjectName; private String relationTransactionProjectName;
...@@ -128,14 +163,17 @@ public class TTradeProject extends BaseEntity ...@@ -128,14 +163,17 @@ public class TTradeProject extends BaseEntity
/** 评价时间 */ /** 评价时间 */
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
@Excel(name = "评价时间", width = 30, dateFormat = "yyyy-MM-dd")
private Date evaluateTime; private Date evaluateTime;
/** 确认时间 */ /** 确认时间 */
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
@Excel(name = "确认时间", width = 30, dateFormat = "yyyy-MM-dd")
private Date confirmTime; private Date confirmTime;
/** 审核时间 */ /** 审核时间 */
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
@Excel(name = "审核时间", width = 30, dateFormat = "yyyy-MM-dd")
private Date approvalTime; private Date approvalTime;
public String getDealRemark() { public String getDealRemark() {
...@@ -374,6 +412,118 @@ public class TTradeProject extends BaseEntity ...@@ -374,6 +412,118 @@ public class TTradeProject extends BaseEntity
this.queryType = queryType; this.queryType = queryType;
} }
public Long getUserId() {
return userId;
}
public void setUserId(Long userId) {
this.userId = userId;
}
public Long getChangeBy1st() {
return changeBy1st;
}
public void setChangeBy1st(Long changeBy1st) {
this.changeBy1st = changeBy1st;
}
public Long getChangeBy2nd() {
return changeBy2nd;
}
public void setChangeBy2nd(Long changeBy2nd) {
this.changeBy2nd = changeBy2nd;
}
public Long getChangeBy3rd() {
return changeBy3rd;
}
public void setChangeBy3rd(Long changeBy3rd) {
this.changeBy3rd = changeBy3rd;
}
public int getChangeCount() {
return changeCount;
}
public void setChangeCount(int changeCount) {
this.changeCount = changeCount;
}
public String getChangeBy1stName() {
return changeBy1stName;
}
public void setChangeBy1stName(String changeBy1stName) {
this.changeBy1stName = changeBy1stName;
}
public String getChangeBy2ndName() {
return changeBy2ndName;
}
public void setChangeBy2ndName(String changeBy2ndName) {
this.changeBy2ndName = changeBy2ndName;
}
public String getChangeBy3rdName() {
return changeBy3rdName;
}
public void setChangeBy3rdName(String changeBy3rdName) {
this.changeBy3rdName = changeBy3rdName;
}
public String getChangeBy1stDeptId() {
return changeBy1stDeptId;
}
public void setChangeBy1stDeptId(String changeBy1stDeptId) {
this.changeBy1stDeptId = changeBy1stDeptId;
}
public String getChangeBy2ndDeptId() {
return changeBy2ndDeptId;
}
public void setChangeBy2ndDeptId(String changeBy2ndDeptId) {
this.changeBy2ndDeptId = changeBy2ndDeptId;
}
public String getChangeBy3rdDeptId() {
return changeBy3rdDeptId;
}
public void setChangeBy3rdDeptId(String changeBy3rdDeptId) {
this.changeBy3rdDeptId = changeBy3rdDeptId;
}
public String getChangeBy1stDeptName() {
return changeBy1stDeptName;
}
public void setChangeBy1stDeptName(String changeBy1stDeptName) {
this.changeBy1stDeptName = changeBy1stDeptName;
}
public String getChangeBy2ndDeptName() {
return changeBy2ndDeptName;
}
public void setChangeBy2ndDeptName(String changeBy2ndDeptName) {
this.changeBy2ndDeptName = changeBy2ndDeptName;
}
public String getChangeBy3rdDeptName() {
return changeBy3rdDeptName;
}
public void setChangeBy3rdDeptName(String changeBy3rdDeptName) {
this.changeBy3rdDeptName = changeBy3rdDeptName;
}
public List<String> getOperators() { public List<String> getOperators() {
return operators; return operators;
} }
...@@ -414,6 +564,14 @@ public class TTradeProject extends BaseEntity ...@@ -414,6 +564,14 @@ public class TTradeProject extends BaseEntity
this.queryTradeDeptId = queryTradeDeptId; this.queryTradeDeptId = queryTradeDeptId;
} }
public Long getQueryChangeDeptId() {
return queryChangeDeptId;
}
public void setQueryChangeDeptId(Long queryChangeDeptId) {
this.queryChangeDeptId = queryChangeDeptId;
}
public String getTransactionDetailName() { public String getTransactionDetailName() {
return transactionDetailName; return transactionDetailName;
} }
......
package com.zehong.system.mapper;
import java.util.List;
import com.zehong.system.domain.TTradeChangeInfo;
/**
* 交易项目转移信息Mapper接口
*
* @author zehong
* @date 2023-09-12
*/
public interface TTradeChangeInfoMapper
{
/**
* 查询交易项目转移信息
*
* @param changeId 交易项目转移信息ID
* @return 交易项目转移信息
*/
public TTradeChangeInfo selectTTradeChangeInfoById(Long changeId);
/**
* 查询交易项目转移信息列表
*
* @param tTradeChangeInfo 交易项目转移信息
* @return 交易项目转移信息集合
*/
public List<TTradeChangeInfo> selectTTradeChangeInfoList(TTradeChangeInfo tTradeChangeInfo);
/**
* 新增交易项目转移信息
*
* @param tTradeChangeInfo 交易项目转移信息
* @return 结果
*/
public int insertTTradeChangeInfo(TTradeChangeInfo tTradeChangeInfo);
/**
* 修改交易项目转移信息
*
* @param tTradeChangeInfo 交易项目转移信息
* @return 结果
*/
public int updateTTradeChangeInfo(TTradeChangeInfo tTradeChangeInfo);
/**
* 删除交易项目转移信息
*
* @param changeId 交易项目转移信息ID
* @return 结果
*/
public int deleteTTradeChangeInfoById(Long changeId);
/**
* 批量删除交易项目转移信息
*
* @param changeIds 需要删除的数据ID
* @return 结果
*/
public int deleteTTradeChangeInfoByIds(Long[] changeIds);
}
package com.zehong.system.service;
import java.util.List;
import com.zehong.system.domain.TTradeChangeInfo;
/**
* 交易项目转移信息Service接口
*
* @author zehong
* @date 2023-09-12
*/
public interface ITTradeChangeInfoService
{
/**
* 查询交易项目转移信息
*
* @param changeId 交易项目转移信息ID
* @return 交易项目转移信息
*/
public TTradeChangeInfo selectTTradeChangeInfoById(Long changeId);
/**
* 查询交易项目转移信息列表
*
* @param tTradeChangeInfo 交易项目转移信息
* @return 交易项目转移信息集合
*/
public List<TTradeChangeInfo> selectTTradeChangeInfoList(TTradeChangeInfo tTradeChangeInfo);
/**
* 新增交易项目转移信息
*
* @param tTradeChangeInfo 交易项目转移信息
* @return 结果
*/
public int insertTTradeChangeInfo(TTradeChangeInfo tTradeChangeInfo);
/**
* 修改交易项目转移信息
*
* @param tTradeChangeInfo 交易项目转移信息
* @return 结果
*/
public int updateTTradeChangeInfo(TTradeChangeInfo tTradeChangeInfo);
/**
* 批量删除交易项目转移信息
*
* @param changeIds 需要删除的交易项目转移信息ID
* @return 结果
*/
public int deleteTTradeChangeInfoByIds(Long[] changeIds);
/**
* 删除交易项目转移信息信息
*
* @param changeId 交易项目转移信息ID
* @return 结果
*/
public int deleteTTradeChangeInfoById(Long changeId);
}
package com.zehong.system.service.impl;
import java.util.List;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import com.zehong.system.mapper.TTradeChangeInfoMapper;
import com.zehong.system.domain.TTradeChangeInfo;
import com.zehong.system.service.ITTradeChangeInfoService;
/**
* 交易项目转移信息Service业务层处理
*
* @author zehong
* @date 2023-09-12
*/
@Service
public class TTradeChangeInfoServiceImpl implements ITTradeChangeInfoService
{
@Autowired
private TTradeChangeInfoMapper tTradeChangeInfoMapper;
/**
* 查询交易项目转移信息
*
* @param changeId 交易项目转移信息ID
* @return 交易项目转移信息
*/
@Override
public TTradeChangeInfo selectTTradeChangeInfoById(Long changeId)
{
return tTradeChangeInfoMapper.selectTTradeChangeInfoById(changeId);
}
/**
* 查询交易项目转移信息列表
*
* @param tTradeChangeInfo 交易项目转移信息
* @return 交易项目转移信息
*/
@Override
public List<TTradeChangeInfo> selectTTradeChangeInfoList(TTradeChangeInfo tTradeChangeInfo)
{
return tTradeChangeInfoMapper.selectTTradeChangeInfoList(tTradeChangeInfo);
}
/**
* 新增交易项目转移信息
*
* @param tTradeChangeInfo 交易项目转移信息
* @return 结果
*/
@Override
public int insertTTradeChangeInfo(TTradeChangeInfo tTradeChangeInfo)
{
return tTradeChangeInfoMapper.insertTTradeChangeInfo(tTradeChangeInfo);
}
/**
* 修改交易项目转移信息
*
* @param tTradeChangeInfo 交易项目转移信息
* @return 结果
*/
@Override
public int updateTTradeChangeInfo(TTradeChangeInfo tTradeChangeInfo)
{
return tTradeChangeInfoMapper.updateTTradeChangeInfo(tTradeChangeInfo);
}
/**
* 批量删除交易项目转移信息
*
* @param changeIds 需要删除的交易项目转移信息ID
* @return 结果
*/
@Override
public int deleteTTradeChangeInfoByIds(Long[] changeIds)
{
return tTradeChangeInfoMapper.deleteTTradeChangeInfoByIds(changeIds);
}
/**
* 删除交易项目转移信息信息
*
* @param changeId 交易项目转移信息ID
* @return 结果
*/
@Override
public int deleteTTradeChangeInfoById(Long changeId)
{
return tTradeChangeInfoMapper.deleteTTradeChangeInfoById(changeId);
}
}
...@@ -6,8 +6,10 @@ import com.zehong.common.core.exception.BusinessException; ...@@ -6,8 +6,10 @@ import com.zehong.common.core.exception.BusinessException;
import com.zehong.common.utils.DateUtils; import com.zehong.common.utils.DateUtils;
import com.zehong.common.utils.SecurityUtils; import com.zehong.common.utils.SecurityUtils;
import com.zehong.system.domain.TAccount; import com.zehong.system.domain.TAccount;
import com.zehong.system.domain.TTradeChangeInfo;
import com.zehong.system.domain.TTradeProject; import com.zehong.system.domain.TTradeProject;
import com.zehong.system.mapper.TAccountMapper; import com.zehong.system.mapper.TAccountMapper;
import com.zehong.system.mapper.TTradeChangeInfoMapper;
import com.zehong.system.mapper.TTradeProjectMapper; import com.zehong.system.mapper.TTradeProjectMapper;
import com.zehong.system.service.ITTradeProjectService; import com.zehong.system.service.ITTradeProjectService;
import com.zehong.system.service.impl.tradeRoles.TradeRoles; import com.zehong.system.service.impl.tradeRoles.TradeRoles;
...@@ -37,6 +39,9 @@ public class TTradeProjectServiceImpl implements ITTradeProjectService ...@@ -37,6 +39,9 @@ public class TTradeProjectServiceImpl implements ITTradeProjectService
@Autowired @Autowired
private TTradeProjectMapper tTradeProjectMapper; private TTradeProjectMapper tTradeProjectMapper;
@Autowired
private TTradeChangeInfoMapper tTradeChangeInfoMapper;
@Resource @Resource
private SettlementTrade settlementTrade; private SettlementTrade settlementTrade;
...@@ -159,6 +164,40 @@ public class TTradeProjectServiceImpl implements ITTradeProjectService ...@@ -159,6 +164,40 @@ public class TTradeProjectServiceImpl implements ITTradeProjectService
@Override @Override
public int updateTTradeProject(TTradeProject tTradeProject) public int updateTTradeProject(TTradeProject tTradeProject)
{ {
TTradeProject trade = tTradeProjectMapper.selectTTradeProjectById(tTradeProject.getTradeId());
// 转移支付:新增交易转移信息,更新交易单
if(tTradeProject.getTradeDeptId()!=null && tTradeProject.getTradeTransactor()!=null){
TTradeChangeInfo tradeChangeInfo = new TTradeChangeInfo();
tradeChangeInfo.setRelationTradeId(tTradeProject.getTradeId());
tradeChangeInfo.setOriginalTradeDeptId(trade.getTradeDeptId());
tradeChangeInfo.setOriginalTradeTransactorId(trade.getTradeTransactor());
tradeChangeInfo.setNewTradeDeptId(tTradeProject.getTradeDeptId());
tradeChangeInfo.setNewTradeTransactorId(tTradeProject.getTradeTransactor());
tradeChangeInfo.setRemark(tTradeProject.getDealRemark());
tradeChangeInfo.setChangeTime(tTradeProject.getEvaluateTime());
int changeCount = trade.getChangeCount();
if(changeCount == 0){
tTradeProject.setChangeBy1st(trade.getTradeTransactor());
} else if(changeCount == 1){
tTradeProject.setChangeBy2nd(trade.getTradeTransactor());
} else if(changeCount == 2){
tTradeProject.setChangeBy3rd(trade.getTradeTransactor());
} else if(changeCount == 3){
return -1;
}
changeCount++;
tTradeProject.setChangeCount(changeCount);
tTradeProject.setTradeStatus(null);
tTradeProject.setDealRemark(null);
tTradeProject.setEvaluateTime(null);
tTradeChangeInfoMapper.insertTTradeChangeInfo(tradeChangeInfo);
} else if(tTradeProject.getTradeDeptId()==null && tTradeProject.getTradeTransactor()==null){
tTradeProject.setChangeCount(trade.getChangeCount());
}
tTradeProject.setUpdateTime(DateUtils.getNowDate()); tTradeProject.setUpdateTime(DateUtils.getNowDate());
return tTradeProjectMapper.updateTTradeProject(tTradeProject); return tTradeProjectMapper.updateTTradeProject(tTradeProject);
} }
......
...@@ -24,6 +24,10 @@ public class DeptLeader extends TradeRolesAbstract { ...@@ -24,6 +24,10 @@ public class DeptLeader extends TradeRolesAbstract {
if("myApproval".equals(tTradeProject.getQueryType()) || "all".equals(tTradeProject.getQueryType())){ if("myApproval".equals(tTradeProject.getQueryType()) || "all".equals(tTradeProject.getQueryType())){
this.tTradeProject.setTradeDeptId(user.getDeptId()); this.tTradeProject.setTradeDeptId(user.getDeptId());
} }
if("myChange".equals(tTradeProject.getQueryType())){
this.tTradeProject.setQueryChangeDeptId(user.getDeptId());
this.tTradeProject.setChangeCount(tTradeProject.getChangeCount());
}
} }
@Override @Override
......
...@@ -27,6 +27,10 @@ public class DoubleRoles extends TradeRolesAbstract { ...@@ -27,6 +27,10 @@ public class DoubleRoles extends TradeRolesAbstract {
if("myApproval".equals(tTradeProject.getQueryType()) || "all".equals(tTradeProject.getQueryType())){ if("myApproval".equals(tTradeProject.getQueryType()) || "all".equals(tTradeProject.getQueryType())){
this.tTradeProject.setTradeDeptId(user.getDeptId()); this.tTradeProject.setTradeDeptId(user.getDeptId());
} }
if("myChange".equals(tTradeProject.getQueryType())){
this.tTradeProject.setQueryChangeDeptId(user.getDeptId());
this.tTradeProject.setChangeCount(tTradeProject.getChangeCount());
}
} }
@Override @Override
......
...@@ -25,6 +25,10 @@ public class OtherRoles extends TradeRolesAbstract { ...@@ -25,6 +25,10 @@ public class OtherRoles extends TradeRolesAbstract {
this.tTradeProject.setTradeDeptId(user.getDeptId()); this.tTradeProject.setTradeDeptId(user.getDeptId());
this.tTradeProject.setTradeTransactor(user.getUserId()); this.tTradeProject.setTradeTransactor(user.getUserId());
} }
if("myChange".equals(tTradeProject.getQueryType())){
this.tTradeProject.setQueryChangeDeptId(user.getDeptId());
this.tTradeProject.setChangeCount(tTradeProject.getChangeCount());
}
} }
@Override @Override
......
...@@ -26,6 +26,11 @@ public class Transactor extends TradeRolesAbstract { ...@@ -26,6 +26,11 @@ public class Transactor extends TradeRolesAbstract {
this.tTradeProject.setTradeDeptId(user.getDeptId()); this.tTradeProject.setTradeDeptId(user.getDeptId());
this.tTradeProject.setTradeTransactor(user.getUserId()); this.tTradeProject.setTradeTransactor(user.getUserId());
} }
if("myChange".equals(tTradeProject.getQueryType())){
this.tTradeProject.setQueryChangeDeptId(user.getDeptId());
this.tTradeProject.setUserId(user.getUserId());
this.tTradeProject.setChangeCount(tTradeProject.getChangeCount());
}
} }
@Override @Override
......
<?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.zehong.system.mapper.TTradeChangeInfoMapper">
<resultMap type="TTradeChangeInfo" id="TTradeChangeInfoResult">
<result property="changeId" column="change_id" />
<result property="relationTradeId" column="relation_trade_id" />
<result property="originalTradeTransactorId" column="original_trade_transactor_id" />
<result property="originalTradeDeptId" column="original_trade_dept_id" />
<result property="newTradeTransactorId" column="new_trade_transactor_id" />
<result property="newTradeDeptId" column="new_trade_dept_id" />
<result property="remark" column="remark" />
<result property="changeTime" column="change_time" />
<result property="originalTradeTransactorName" column="original_trade_transactor_name" />
<result property="originalTradeDeptName" column="original_trade_dept_name" />
<result property="newTradeTransactorName" column="new_trade_transactor_name" />
<result property="newTradeDeptName" column="new_trade_dept_name" />
</resultMap>
<sql id="selectTTradeChangeInfoVo">
select
c.change_id,
c.relation_trade_id,
c.original_trade_transactor_id,
c.original_trade_dept_id,
c.new_trade_transactor_id,
c.new_trade_dept_id,
c.remark,
c.change_time,
(SELECT nick_name FROM sys_user WHERE user_id = c.original_trade_transactor_id) AS original_trade_transactor_name,
(SELECT nick_name FROM sys_user WHERE user_id = c.new_trade_transactor_id) AS new_trade_transactor_name,
(SELECT dept_name FROM sys_dept WHERE dept_id = c.original_trade_dept_id) AS original_trade_dept_name,
(SELECT dept_name FROM sys_dept WHERE dept_id = c.new_trade_dept_id) AS new_trade_dept_name
from t_trade_change_info c
</sql>
<select id="selectTTradeChangeInfoList" parameterType="TTradeChangeInfo" resultMap="TTradeChangeInfoResult">
<include refid="selectTTradeChangeInfoVo"/>
<where>
<if test="relationTradeId != null "> and relation_trade_id = #{relationTradeId}</if>
<if test="originalTradeTransactorId != null "> and original_trade_transactor_id = #{originalTradeTransactorId}</if>
<if test="originalTradeDeptId != null "> and original_trade_dept_id = #{originalTradeDeptId}</if>
<if test="newTradeTransactorId != null "> and new_trade_transactor_id = #{newTradeTransactorId}</if>
<if test="newTradeDeptId != null "> and new_trade_dept_id = #{newTradeDeptId}</if>
<if test="changeTime != null "> and change_time = #{changeTime}</if>
</where>
</select>
<select id="selectTTradeChangeInfoById" parameterType="Long" resultMap="TTradeChangeInfoResult">
<include refid="selectTTradeChangeInfoVo"/>
where change_id = #{changeId}
</select>
<insert id="insertTTradeChangeInfo" parameterType="TTradeChangeInfo" useGeneratedKeys="true" keyProperty="changeId">
insert into t_trade_change_info
<trim prefix="(" suffix=")" suffixOverrides=",">
<if test="relationTradeId != null">relation_trade_id,</if>
<if test="originalTradeTransactorId != null">original_trade_transactor_id,</if>
<if test="originalTradeDeptId != null">original_trade_dept_id,</if>
<if test="newTradeTransactorId != null">new_trade_transactor_id,</if>
<if test="newTradeDeptId != null">new_trade_dept_id,</if>
<if test="remark != null">remark,</if>
<if test="changeTime != null">change_time,</if>
</trim>
<trim prefix="values (" suffix=")" suffixOverrides=",">
<if test="relationTradeId != null">#{relationTradeId},</if>
<if test="originalTradeTransactorId != null">#{originalTradeTransactorId},</if>
<if test="originalTradeDeptId != null">#{originalTradeDeptId},</if>
<if test="newTradeTransactorId != null">#{newTradeTransactorId},</if>
<if test="newTradeDeptId != null">#{newTradeDeptId},</if>
<if test="remark != null">#{remark},</if>
<if test="changeTime != null">#{changeTime},</if>
</trim>
</insert>
<update id="updateTTradeChangeInfo" parameterType="TTradeChangeInfo">
update t_trade_change_info
<trim prefix="SET" suffixOverrides=",">
<if test="relationTradeId != null">relation_trade_id = #{relationTradeId},</if>
<if test="originalTradeTransactorId != null">original_trade_transactor_id = #{originalTradeTransactorId},</if>
<if test="originalTradeDeptId != null">original_trade_dept_id = #{originalTradeDeptId},</if>
<if test="newTradeTransactorId != null">new_trade_transactor_id = #{newTradeTransactorId},</if>
<if test="newTradeDeptId != null">new_trade_dept_id = #{newTradeDeptId},</if>
<if test="remark != null">remark = #{remark},</if>
<if test="changeTime != null">change_time = #{changeTime},</if>
</trim>
where change_id = #{changeId}
</update>
<delete id="deleteTTradeChangeInfoById" parameterType="Long">
delete from t_trade_change_info where change_id = #{changeId}
</delete>
<delete id="deleteTTradeChangeInfoByIds" parameterType="String">
delete from t_trade_change_info where change_id in
<foreach item="changeId" collection="array" open="(" separator="," close=")">
#{changeId}
</foreach>
</delete>
</mapper>
\ No newline at end of file
...@@ -35,17 +35,31 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" ...@@ -35,17 +35,31 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
<result property="dealRemark" column="deal_remark" /> <result property="dealRemark" column="deal_remark" />
<result property="applyName" column="apply_name"/> <result property="applyName" column="apply_name"/>
<result property="tradeTransactorName" column="trade_transactor_name"/> <result property="tradeTransactorName" column="trade_transactor_name"/>
<result property="changeCount" column="change_count"/>
<result property="applyDeptName" column="apply_dept_name"/> <result property="applyDeptName" column="apply_dept_name"/>
<result property="tradeDeptName" column="trade_dept_name"/> <result property="tradeDeptName" column="trade_dept_name"/>
<result property="tradeDeptManagerName" column="trade_dept_manager_name"/> <result property="tradeDeptManagerName" column="trade_dept_manager_name"/>
<result property="applyDeptManagerName" column="apply_dept_manager_name"/> <result property="applyDeptManagerName" column="apply_dept_manager_name"/>
<result property="relationTransactionProjectName" column="relation_transaction_project_name"/> <result property="relationTransactionProjectName" column="relation_transaction_project_name"/>
<result property="changeBy1st" column="change_by_1st"/>
<result property="changeBy2nd" column="change_by_2nd"/>
<result property="changeBy3rd" column="change_by_3rd"/>
<result property="changeBy1stName" column="change_by_1st_name"/>
<result property="changeBy2ndName" column="change_by_2nd_name"/>
<result property="changeBy3rdName" column="change_by_3rd_name"/>
<result property="changeBy1stDeptId" column="change_1st_dept_id"/>
<result property="changeBy2ndDeptId" column="change_2nd_dept_id"/>
<result property="changeBy3rdDeptId" column="change_3rd_dept_id"/>
<result property="changeBy1stDeptName" column="change_1st_dept_name"/>
<result property="changeBy2ndDeptName" column="change_2nd_dept_name"/>
<result property="changeBy3rdDeptName" column="change_3rd_dept_name"/>
</resultMap> </resultMap>
<sql id="selectTTradeProjectVo"> <sql id="selectTTradeProjectVo">
SELECT SELECT
trade.trade_id, distinct trade.trade_id,
trade.receipt_num, trade.receipt_num,
trade.relation_transaction_project_id, trade.relation_transaction_project_id,
trade.transaction_detail_name, trade.transaction_detail_name,
...@@ -72,16 +86,30 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" ...@@ -72,16 +86,30 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
trade.is_del, trade.is_del,
trade.remark, trade.remark,
trade.deal_remark, trade.deal_remark,
trade.change_by_1st,
trade.change_by_2nd,
trade.change_by_3rd,
trade.change_count,
project.transaction_project_name AS relation_transaction_project_name, project.transaction_project_name AS relation_transaction_project_name,
(SELECT nick_name FROM sys_user WHERE user_id = trade.trade_transactor) AS trade_transactor_name, (SELECT nick_name FROM sys_user WHERE user_id = trade.trade_transactor) AS trade_transactor_name,
(SELECT nick_name FROM sys_user WHERE user_id = trade.apply_id) AS apply_name, (SELECT nick_name FROM sys_user WHERE user_id = trade.apply_id) AS apply_name,
(SELECT dept_name FROM sys_dept WHERE dept_id = trade.apply_dept_id) AS apply_dept_name, (SELECT dept_name FROM sys_dept WHERE dept_id = trade.apply_dept_id) AS apply_dept_name,
(SELECT dept_name FROM sys_dept WHERE dept_id = trade.trade_dept_id) AS trade_dept_name, (SELECT dept_name FROM sys_dept WHERE dept_id = trade.trade_dept_id) AS trade_dept_name,
(SELECT nick_name FROM sys_user WHERE user_id = trade.trade_dept_manager_id) AS trade_dept_manager_name, (SELECT nick_name FROM sys_user WHERE user_id = trade.trade_dept_manager_id) AS trade_dept_manager_name,
(SELECT nick_name FROM sys_user WHERE user_id = trade.apply_dept_manager_id)AS apply_dept_manager_name (SELECT nick_name FROM sys_user WHERE user_id = trade.apply_dept_manager_id)AS apply_dept_manager_name,
(SELECT nick_name FROM sys_user WHERE user_id = trade.change_by_1st)AS change_by_1st_name,
(SELECT nick_name FROM sys_user WHERE user_id = trade.change_by_2nd)AS change_by_2nd_name,
(SELECT nick_name FROM sys_user WHERE user_id = trade.change_by_3rd)AS change_by_3rd_name,
(SELECT dept_id FROM sys_user WHERE user_id = trade.change_by_1st)AS change_1st_dept_id,
(SELECT dept_id FROM sys_user WHERE user_id = trade.change_by_2nd)AS change_2nd_dept_id,
(SELECT dept_id FROM sys_user WHERE user_id = trade.change_by_3rd)AS change_3rd_dept_id,
(SELECT dept_name FROM sys_user u, sys_dept d WHERE user_id = trade.change_by_1st and u.dept_id = d.dept_id)AS change_1st_dept_name,
(SELECT dept_name FROM sys_user u, sys_dept d WHERE user_id = trade.change_by_2nd and u.dept_id = d.dept_id)AS change_2nd_dept_name,
(SELECT dept_name FROM sys_user u, sys_dept d WHERE user_id = trade.change_by_3rd and u.dept_id = d.dept_id)AS change_3rd_dept_name
FROM FROM
t_trade_project trade t_trade_project trade
LEFT JOIN t_transaction_project project ON project.transaction_project_id = trade.relation_transaction_project_id LEFT JOIN t_transaction_project project ON project.transaction_project_id = trade.relation_transaction_project_id
LEFT JOIN t_trade_change_info c ON trade.trade_id = c.relation_trade_id
</sql> </sql>
<select id="selectTTradeProjectList" parameterType="TTradeProject" resultMap="TTradeProjectResult"> <select id="selectTTradeProjectList" parameterType="TTradeProject" resultMap="TTradeProjectResult">
...@@ -94,6 +122,15 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" ...@@ -94,6 +122,15 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
<if test="applyDeptId != null"> and trade.apply_dept_id = #{applyDeptId}</if> <if test="applyDeptId != null"> and trade.apply_dept_id = #{applyDeptId}</if>
<if test="tradeTransactor != null"> and trade.trade_transactor = #{tradeTransactor}</if> <if test="tradeTransactor != null"> and trade.trade_transactor = #{tradeTransactor}</if>
<if test="tradeDeptId != null"> and trade.trade_dept_id = #{tradeDeptId}</if> <if test="tradeDeptId != null"> and trade.trade_dept_id = #{tradeDeptId}</if>
<!-- 经办人、部门长查询转移支付时 -->
<if test="changeCount != null and changeCount != 0">
and change_count &gt; 0
<if test="userId != null">
and (
trade.change_by_1st = #{userId} or trade.change_by_2nd = #{userId} or trade.change_by_3rd = #{userId}
)
</if>
</if>
</if> </if>
<!-- add by lizhichao 0612 --> <!-- add by lizhichao 0612 -->
<!-- 当同时拥有部门长及经办人角色时 --> <!-- 当同时拥有部门长及经办人角色时 -->
...@@ -128,6 +165,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" ...@@ -128,6 +165,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
<if test="isDel != null and isDel != ''"> and trade.is_del = #{isDel}</if> <if test="isDel != null and isDel != ''"> and trade.is_del = #{isDel}</if>
<if test="queryApplyDeptId != null">and trade.apply_dept_id = #{queryApplyDeptId}</if> <if test="queryApplyDeptId != null">and trade.apply_dept_id = #{queryApplyDeptId}</if>
<if test="queryTradeDeptId != null">and trade.trade_dept_id = #{queryTradeDeptId}</if> <if test="queryTradeDeptId != null">and trade.trade_dept_id = #{queryTradeDeptId}</if>
<if test="queryChangeDeptId != null">and c.original_trade_dept_id = #{queryChangeDeptId}</if>
<if test="transactionDetailName != null">and trade.transaction_detail_name like concat('%', #{transactionDetailName}, '%')</if> <if test="transactionDetailName != null">and trade.transaction_detail_name like concat('%', #{transactionDetailName}, '%')</if>
<if test="relationTransactionProjectName != null">and project.transaction_project_name like concat('%', #{relationTransactionProjectName}, '%')</if> <if test="relationTransactionProjectName != null">and project.transaction_project_name like concat('%', #{relationTransactionProjectName}, '%')</if>
<if test="createBeginTime != null and createEndTime != null">and trade.create_time between #{createBeginTime} and #{createEndTime}</if> <if test="createBeginTime != null and createEndTime != null">and trade.create_time between #{createBeginTime} and #{createEndTime}</if>
...@@ -228,6 +266,10 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" ...@@ -228,6 +266,10 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
<if test="isDel != null">is_del = #{isDel},</if> <if test="isDel != null">is_del = #{isDel},</if>
<if test="remark != null">remark = #{remark},</if> <if test="remark != null">remark = #{remark},</if>
<if test="dealRemark != null">deal_remark = #{dealRemark},</if> <if test="dealRemark != null">deal_remark = #{dealRemark},</if>
<if test="changeBy1st != null">change_by_1st = #{changeBy1st},</if>
<if test="changeBy2nd != null">change_by_2nd = #{changeBy2nd},</if>
<if test="changeBy3rd != null">change_by_3rd = #{changeBy3rd},</if>
<if test="changeCount != null">change_count = #{changeCount}</if>
</trim> </trim>
where trade_id = #{tradeId} where trade_id = #{tradeId}
......
import request from '@/utils/request'
// 查询交易项目转移信息列表
export function listInfo(query) {
return request({
url: '/trade/changeInfo/list',
method: 'get',
params: query
})
}
// 查询交易项目转移信息详细
export function getInfo(changeId) {
return request({
url: '/trade/changeInfo/' + changeId,
method: 'get'
})
}
// 新增交易项目转移信息
export function addInfo(data) {
return request({
url: '/trade/changeInfo',
method: 'post',
data: data
})
}
// 修改交易项目转移信息
export function updateInfo(data) {
return request({
url: '/trade/changeInfo',
method: 'put',
data: data
})
}
// 删除交易项目转移信息
export function delInfo(changeId) {
return request({
url: '/trade/changeInfo/' + changeId,
method: 'delete'
})
}
// 导出交易项目转移信息
export function exportInfo(query) {
return request({
url: '/trade/changeInfo/export',
method: 'get',
params: query
})
}
...@@ -24,9 +24,37 @@ ...@@ -24,9 +24,37 @@
<el-input v-model="dealPrice" disabled style="width: 130px"/> <el-input v-model="dealPrice" disabled style="width: 130px"/>
</el-col> </el-col>
</el-row> </el-row>
<el-row style="margin-left:95px;padding-top: 20px">
<el-col :span="8">
<el-radio v-model="radio" label="3">
<span style="margin: 0px 5px;">转移支付</span>
</el-radio>
</el-col>
</el-row>
<el-row style="margin-left:95px;padding-top: 15px" v-show="isShow">
<el-col :span="10.5">
<span style="margin-right:5px; line-height: 35px">买方</span>
<treeselect
style="width: 235px; float:right"
v-model="tradeDeptId"
:options="formDeptOptions"
:show-count="true"
placeholder="请选择部门"
/>
</el-col>
<el-col :span="13.5">
<span style="margin: 0px 5px 0px 50px; line-height: 35px">买方经办人</span>
<el-select v-model="tradeTransactor" placeholder="请选择买方经办人" style="width: 230px; float:right">
<el-option v-for="item in transactorList"
:key="item.userId"
:label="item.nickName"
:value="item.userId"/>
</el-select>
</el-col>
</el-row>
<el-row style="margin-left:90px;padding-top: 10px"> <el-row style="margin-left:90px;padding-top: 10px">
<el-col :span="24"> <el-col :span="24">
<span style="margin: 0px 5px">说明</span> <span style="margin: 0px 5px; line-height: 70px">说明</span>
<el-input v-model="dealRemark" type="textarea" style="width: 590px"/> <el-input v-model="dealRemark" type="textarea" style="width: 590px"/>
</el-col> </el-col>
</el-row> </el-row>
...@@ -36,6 +64,10 @@ ...@@ -36,6 +64,10 @@
<script> <script>
import CommonInfo from "./CommonInfo"; import CommonInfo from "./CommonInfo";
import { treeselect } from "@/api/system/dept";
import { selectTransactorByDeptId } from "@/api/system/user";
import Treeselect from "@riophae/vue-treeselect";
import "@riophae/vue-treeselect/dist/vue-treeselect.css";
import moment from "moment"; import moment from "moment";
export default { export default {
name: "evaluate", name: "evaluate",
...@@ -45,7 +77,8 @@ ...@@ -45,7 +77,8 @@
} }
}, },
components:{ components:{
CommonInfo CommonInfo,
Treeselect
}, },
data(){ data(){
return{ return{
...@@ -55,9 +88,17 @@ ...@@ -55,9 +88,17 @@
socre: "", socre: "",
price: "", price: "",
dealPrice: "", dealPrice: "",
dealRemark:"" dealRemark:null,
tradeDeptId: null,
tradeTransactor: null,
formDeptOptions: [],
transactorList: [],
isShow: false,
} }
}, },
created() {
this.getTreeselect();
},
watch:{ watch:{
radio(newVal,oldVal){ radio(newVal,oldVal){
this.price = ""; this.price = "";
...@@ -66,14 +107,63 @@ ...@@ -66,14 +107,63 @@
if(newVal == '1'){ if(newVal == '1'){
this.priceDisabled = false; this.priceDisabled = false;
this.socreDisabled = true; this.socreDisabled = true;
this.isShow = false;
this.tradeDeptId = null;
this.tradeTransactor = null;
} }
if(newVal == '2'){ if(newVal == '2'){
this.priceDisabled = true; this.priceDisabled = true;
this.socreDisabled = false; this.socreDisabled = false;
this.isShow = false;
this.tradeDeptId = null;
this.tradeTransactor = null;
} }
} if(newVal == '3'){
this.priceDisabled = true;
this.socreDisabled = true;
this.isShow = true;
}
},
"tradeDeptId":{
handler(newValue, oldValue){
this.getTransactor();
},
deep: true,
},
}, },
methods:{ methods:{
/** 查询部门下拉树结构 */
getTreeselect() {
treeselect().then((response) => {
this.formDeptOptions = response.data;
// 买方不能选自己部门
var items = this.formDeptOptions[0].children;
var result = [];
var j=0;
for(var i=0; i<items.length; i++){
if(items[i].id != this.$store.state.user.deptId && items[i].id != this.tradeData.applyDeptId){
result[j] = items[i];
j++;
}
}
this.formDeptOptions[0].children = result;
console.log("formDeptOptions===",this.formDeptOptions);
});
},
getTransactor() {
if(this.count > 0){
this.tradeTransactor = null;
}
if (this.tradeDeptId && this.tradeDeptId != null) {
selectTransactorByDeptId({ deptId: this.tradeDeptId }).then(
(res) => {
this.transactorList = res.data;
this.count++;
}
);
}
},
//议价 //议价
priceInput(){ priceInput(){
this.dealPrice = this.price; this.dealPrice = this.price;
...@@ -88,14 +178,26 @@ ...@@ -88,14 +178,26 @@
this.dealRemark=""; this.dealRemark="";
}, },
checkParam(){ checkParam(){
if(!this.dealPrice){ console.log("this.radio",this.radio);
console.log("this.dealPrice",this.dealPrice);
console.log("this.tradeDeptId",this.tradeDeptId);
console.log("this.tradeTransactor",this.tradeTransactor);
console.log("this.tradeData.changeCount",this.tradeData.changeCount);
if(this.radio!='3' && !this.dealPrice){
this.$message.error("请检查评价信息!") this.$message.error("请检查评价信息!")
return true; return true;
}else if(this.radio=='3' && (!this.tradeDeptId || !this.tradeTransactor) && this.tradeData.changeCount<3){
this.$message.error("请检查转移支付信息!")
return true;
} else if(this.radio=='3' && this.tradeData.changeCount>=3){
this.$message.error("转移支付已满3次,具体信息请查看详情!")
return true;
} }
return false; return false;
}, },
submitSuggestion(){ submitSuggestion(){
let param = {tradeId:this.tradeData.tradeId,tradeStatus:"1",dealPrice:this.dealPrice,dealRemark:this.dealRemark,evaluateTime:moment().format('YYYY-MM-DD HH:mm:ss')}; let param = {tradeId:this.tradeData.tradeId,tradeStatus:"1",dealPrice:this.dealPrice,dealRemark:this.dealRemark,evaluateTime:moment().format('YYYY-MM-DD HH:mm:ss'),
tradeDeptId:this.tradeDeptId, tradeTransactor:this.tradeTransactor};
if(this.socre){ if(this.socre){
param.tradeScore = this.socre; param.tradeScore = this.socre;
}else{ }else{
......
<template> <template>
<div> <div>
<el-table v-loading="loading" :data="projectList"> <el-table v-loading="loading" :data="projectList">
<el-table-column <el-table-column label="交易项目" align="center" prop="relationTransactionProjectId" :formatter="transactionProjectName" :show-overflow-tooltip="true"/>
label="交易项目" <el-table-column label="交易细项名称" align="center" prop="transactionDetailName" :show-overflow-tooltip="true" width="100px">
align="center"
prop="relationTransactionProjectId"
:formatter="transactionProjectName"
:show-overflow-tooltip="true"
/>
<el-table-column
label="交易细项名称"
align="center"
prop="transactionDetailName"
:show-overflow-tooltip="true"
width="100px"
>
<template slot-scope="scope"> <template slot-scope="scope">
<span v-if="scope.row.transactionDetailName">{{scope.row.transactionDetailName}}</span> <span v-if="scope.row.transactionDetailName">{{scope.row.transactionDetailName}}</span>
<span v-else>-</span> <span v-else>-</span>
</template> </template>
</el-table-column> </el-table-column>
<el-table-column <el-table-column label="卖方" align="center" prop="applyDeptName" :show-overflow-tooltip="true"/>
label="交易状态"
align="center"
prop="tradeStatus"
:formatter="getTradeStatus"
:show-overflow-tooltip="true"
/>
<el-table-column
label="卖方"
align="center"
prop="applyDeptName"
:show-overflow-tooltip="true"
/>
<el-table-column label="申请人" align="center" prop="applyName" /> <el-table-column label="申请人" align="center" prop="applyName" />
<el-table-column label="申请时间" align="center" prop="createTime" width="150px"/> <el-table-column label="申请时间" align="center" prop="createTime" width="150px"/>
<el-table-column label="申报总价" align="center" prop="tradeTotal" /> <el-table-column label="申报总价" align="center" prop="tradeTotal" />
<el-table-column <el-table-column label="买方" align="center" prop="tradeDeptName" :show-overflow-tooltip="true"/>
label="买方" <el-table-column label="买方经办人" align="center" prop="tradeTransactorName" :show-overflow-tooltip="true"/>
align="center" <el-table-column label="交易状态" align="center" prop="tradeStatus" :formatter="getTradeStatus" :show-overflow-tooltip="true" width="140"/>
prop="tradeDeptName" <!-- <el-table-column label="交易评分" align="center" prop="tradeScore" />-->
:show-overflow-tooltip="true"
/>
<el-table-column
label="买方经办人"
align="center"
prop="tradeTransactorName"
:show-overflow-tooltip="true"
/>
<el-table-column label="交易评分" align="center" prop="tradeScore" />
<el-table-column label="交易成交价" align="center" prop="dealPrice" /> <el-table-column label="交易成交价" align="center" prop="dealPrice" />
<el-table-column label="转移支付" align="center" prop="changeCount">
<template slot-scope="scope">
<span v-if="scope.row.changeCount != null">{{scope.row.changeCount}}</span>
<span v-else>0次</span>
</template>
</el-table-column>
<el-table-column label="尾款" align="center" prop="pendingPayment" width="80"/> <el-table-column label="尾款" align="center" prop="pendingPayment" width="80"/>
<el-table-column <el-table-column
label="操作" label="操作"
......
<template> <template>
<div class="detail"> <div class="detail">
<CommonInfo :tradeData="tradeData"/> <CommonInfo :tradeData="tradeData"/>
<!-- 转移支付 -->
<div v-if="tradeData.changeCount > 0">
<div style="margin: 11px 30px;color: #1890ff;">转移支付</div>
<el-form label-width="100px">
<!--<el-row>
<el-col :span="8">
<el-form-item label="议价" v-if="!tradeData.socre">{{tradeData.dealPrice}}</el-form-item>
<el-form-item label="评价" v-else>{{tradeData.tradeScore}}</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item label="成交价">{{tradeData.dealPrice}}</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item label="审核人">{{tradeData.tradeTransactorName}}</el-form-item>
</el-col>
</el-row>-->
<el-timeline :reverse="reverse">
<el-timeline-item
v-for="(activity, index) in changeInfos"
:key="index"
:timestamp="activity.changeTime">
[{{activity.originalTradeDeptName}}:{{activity.originalTradeTransactorName}}] 转移给 [{{activity.newTradeDeptName}}:{{activity.newTradeTransactorName}}]
</el-timeline-item>
</el-timeline>
</el-form>
<el-divider></el-divider>
</div>
<!-- 买方审核 --> <!-- 买方审核 -->
<div v-if="tradeData.tradeStatus > 0"> <div v-if="tradeData.tradeStatus > 0">
<div style="margin: 11px 30px;color: #1890ff;">买方审核</div> <div style="margin: 11px 30px;color: #1890ff;">买方审核</div>
...@@ -75,6 +102,7 @@ ...@@ -75,6 +102,7 @@
</template> </template>
<script> <script>
import { listInfo } from "@/api/transaction/changeInfo.js";
import CommonInfo from "./CommonInfo"; import CommonInfo from "./CommonInfo";
import Evaluate from "./Evaluate"; import Evaluate from "./Evaluate";
import Confirm from "./Confirm"; import Confirm from "./Confirm";
...@@ -91,6 +119,25 @@ ...@@ -91,6 +119,25 @@
Evaluate, Evaluate,
Confirm, Confirm,
Approval Approval
},
data(){
return{
reverse: false,
changeInfos: [],
}
},
created() {
this.getChangeInfoList();
},
methods:{
// 查询转移支付信息
getChangeInfoList(){
listInfo({relationTradeId:this.tradeData.tradeId}).then((res) => {
if (res.code == 200) {
this.changeInfos = res.rows;
}
});
}
} }
} }
</script> </script>
......
...@@ -59,7 +59,7 @@ ...@@ -59,7 +59,7 @@
<el-form-item label="卖方部门" prop="queryApplyDeptId"> <el-form-item label="卖方部门" prop="queryApplyDeptId">
<div style="width: 160px"> <div style="width: 160px">
<treeselect <Treeselect
v-model="queryParams.queryApplyDeptId" v-model="queryParams.queryApplyDeptId"
:options="deptOptions" :options="deptOptions"
:show-count="true" :show-count="true"
...@@ -161,7 +161,7 @@ ...@@ -161,7 +161,7 @@
<header class="header"> <header class="header">
<ul class="tab-tilte"> <ul class="tab-tilte">
<li :class="{ active: tab == 0 }" @click="changeTab(0)"> <li :class="{ active: tab == 0 }" @click="changeTab(0)">
所有项目 所有交易项目
</li> </li>
<li :class="{ active: tab == 1 }" @click="changeTab(1)"> <li :class="{ active: tab == 1 }" @click="changeTab(1)">
我申请的 我申请的
...@@ -169,6 +169,9 @@ ...@@ -169,6 +169,9 @@
<li :class="{ active: tab == 2 }" @click="changeTab(2)"> <li :class="{ active: tab == 2 }" @click="changeTab(2)">
我审批的 我审批的
</li> </li>
<li :class="{ active: tab == 3 }" @click="changeTab(3)">
转移支付项目
</li>
</ul> </ul>
<el-button <el-button
@click="handleAdd" @click="handleAdd"
...@@ -209,6 +212,15 @@ ...@@ -209,6 +212,15 @@
@getList="getList" @getList="getList"
/> />
</div> </div>
<div v-if="tab == 3" :key="tab">
<TableList
:queryParams="queryParams"
:projectList="projectList"
:total="total"
:loading="loading"
@getList="getList"
/>
</div>
</div> </div>
</div> </div>
</el-card> </el-card>
...@@ -421,7 +433,8 @@ export default { ...@@ -421,7 +433,8 @@ export default {
queryTradeDeptId: null, queryTradeDeptId: null,
relationTransactionProjectName: null, relationTransactionProjectName: null,
createBeginTime: null, createBeginTime: null,
createEndTime: null createEndTime: null,
changeCount: null
}, },
// 表单参数 // 表单参数
form: {}, form: {},
...@@ -432,7 +445,7 @@ export default { ...@@ -432,7 +445,7 @@ export default {
], ],
transactionDetailName: [ transactionDetailName: [
{ required: true, message: "交易细项名称不能为空", trigger: "blur" }, { required: true, message: "交易细项名称不能为空", trigger: "blur" },
], ],
tradeDeptId: [ tradeDeptId: [
{ required: true, message: "请选择买方部门", trigger: "change" }, { required: true, message: "请选择买方部门", trigger: "change" },
], ],
...@@ -525,6 +538,10 @@ export default { ...@@ -525,6 +538,10 @@ export default {
updateTime: null, updateTime: null,
isDel: null, isDel: null,
remark: null, remark: null,
changeBy1st: null,
changeBy2nd: null,
changeBy3rd: null,
changeCount: null
}; };
this.resetForm("form"); this.resetForm("form");
this.fileList = []; this.fileList = [];
...@@ -771,12 +788,19 @@ export default { ...@@ -771,12 +788,19 @@ export default {
this.tab = tabNum; this.tab = tabNum;
if (tabNum == 0) { if (tabNum == 0) {
this.queryParams.queryType = "all"; this.queryParams.queryType = "all";
this.queryParams.changeCount = null;
} }
if (tabNum == 1) { if (tabNum == 1) {
this.queryParams.queryType = "myApply"; this.queryParams.queryType = "myApply";
this.queryParams.changeCount = null;
} }
if (tabNum == 2) { if (tabNum == 2) {
this.queryParams.queryType = "myApproval"; this.queryParams.queryType = "myApproval";
this.queryParams.changeCount = null;
}
if (tabNum == 3) {
this.queryParams.queryType = "myChange";
this.queryParams.changeCount = 3;
} }
this.getList(); this.getList();
}, },
......
...@@ -63,6 +63,16 @@ ...@@ -63,6 +63,16 @@
</div> </div>
</el-form-item> </el-form-item>
<el-form-item label="转移部门" prop="queryChangeDeptId">
<div style="width: 160px">
<treeselect
v-model="queryParams.queryChangeDeptId"
:options="deptOptions"
:show-count="true"
placeholder="请选择转移部门"/>
</div>
</el-form-item>
<el-form-item label="申请时间"> <el-form-item label="申请时间">
<el-date-picker <el-date-picker
v-model="applyTime" v-model="applyTime"
...@@ -90,55 +100,28 @@ ...@@ -90,55 +100,28 @@
</el-form> </el-form>
<el-table v-loading="loading" :data="projectList"> <el-table v-loading="loading" :data="projectList">
<el-table-column <el-table-column label="交易项目" align="center" prop="relationTransactionProjectId" :formatter="transactionProjectName" :show-overflow-tooltip="true"/>
label="交易项目" <el-table-column label="交易细项名称" align="center" prop="transactionDetailName" :show-overflow-tooltip="true" width="100px">
align="center"
prop="relationTransactionProjectId"
:formatter="transactionProjectName"
:show-overflow-tooltip="true"
/>
<el-table-column
label="交易细项名称"
align="center"
prop="transactionDetailName"
:show-overflow-tooltip="true"
width="100"
>
<template slot-scope="scope"> <template slot-scope="scope">
<span v-if="scope.row.transactionDetailName">{{scope.row.transactionDetailName}}</span> <span v-if="scope.row.transactionDetailName">{{scope.row.transactionDetailName}}</span>
<span v-else>-</span> <span v-else>-</span>
</template> </template>
</el-table-column> </el-table-column>
<el-table-column <el-table-column label="卖方" align="center" prop="applyDeptName" :show-overflow-tooltip="true"/>
label="交易状态"
align="center"
prop="tradeStatus"
:formatter="getTradeStatus"
:show-overflow-tooltip="true"
/>
<el-table-column
label="卖方"
align="center"
prop="applyDeptName"
:show-overflow-tooltip="true"
/>
<el-table-column label="申请人" align="center" prop="applyName" /> <el-table-column label="申请人" align="center" prop="applyName" />
<el-table-column label="申请时间" align="center" prop="createTime" width="150px"/> <el-table-column label="申请时间" align="center" prop="createTime" width="150px"/>
<el-table-column label="申报总价" align="center" prop="tradeTotal" /> <el-table-column label="申报总价" align="center" prop="tradeTotal" />
<el-table-column <el-table-column label="买方" align="center" prop="tradeDeptName" :show-overflow-tooltip="true"/>
label="买方" <el-table-column label="买方经办人" align="center" prop="tradeTransactorName" :show-overflow-tooltip="true"/>
align="center" <el-table-column label="交易状态" align="center" prop="tradeStatus" :formatter="getTradeStatus" :show-overflow-tooltip="true" width="140"/>
prop="tradeDeptName" <!-- <el-table-column label="交易评分" align="center" prop="tradeScore" />-->
:show-overflow-tooltip="true"
/>
<el-table-column
label="买方经办人"
align="center"
prop="tradeTransactorName"
:show-overflow-tooltip="true"
/>
<el-table-column label="交易评分" align="center" prop="tradeScore" />
<el-table-column label="交易成交价" align="center" prop="dealPrice" /> <el-table-column label="交易成交价" align="center" prop="dealPrice" />
<el-table-column label="转移支付" align="center" prop="changeCount">
<template slot-scope="scope">
<span v-if="scope.row.changeCount != null">{{scope.row.changeCount}}</span>
<span v-else>0次</span>
</template>
</el-table-column>
<el-table-column label="尾款" align="center" prop="pendingPayment" width="80"/> <el-table-column label="尾款" align="center" prop="pendingPayment" width="80"/>
<el-table-column <el-table-column
label="操作" label="操作"
...@@ -196,6 +179,7 @@ ...@@ -196,6 +179,7 @@
createTime: null, createTime: null,
queryApplyDeptId: null, queryApplyDeptId: null,
queryTradeDeptId: null, queryTradeDeptId: null,
queryChangeDeptId: null,
relationTransactionProjectName: null, relationTransactionProjectName: null,
createBeginTime: null, createBeginTime: null,
createEndTime: null createEndTime: null
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment