This commit is contained in:
xd 2024-07-15 15:22:39 +08:00
parent 4e9d72f353
commit 348c82122a
17 changed files with 738 additions and 115 deletions

View File

@ -1,5 +1,5 @@
#for tests only !
#Sun Jul 14 09:24:48 CST 2024
#Mon Jul 15 15:20:26 CST 2024
jco.destination.pool_capacity=10
jco.client.lang=ZH
jco.client.ashost=172.19.0.125
@ -7,5 +7,5 @@ jco.client.saprouter=
jco.client.user=RFC
jco.client.sysnr=00
jco.destination.peak_limit=10
jco.client.passwd=wl1ohKB{(qG12134rfI2_aP1$-R2Li3KI(-4`GAN*gJkQ1]B
jco.client.passwd=dYY1^[j]hj;aDf7jt@xtoi_t?5.0qx/_q7yH^w?b;i2cDbM~
jco.client.client=800

View File

@ -1,12 +1,10 @@
package com.ruoyi.web.controller.bid;
import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.List;
import javax.servlet.http.HttpServletResponse;
import com.ruoyi.bid.domain.BidFile;
import com.ruoyi.bid.domain.SysOaBid;
import com.ruoyi.bid.service.IBidFileService;
import com.ruoyi.common.core.domain.entity.SysDept;
import com.ruoyi.common.core.domain.entity.SysRole;
import com.ruoyi.common.utils.DateUtils;
import com.ruoyi.common.utils.SecurityUtils;
@ -14,7 +12,7 @@ import com.ruoyi.common.utils.StringUtils;
import com.ruoyi.common.utils.file.FileUploadUtils;
import com.ruoyi.common.utils.file.MinioUtil;
import com.ruoyi.common.utils.uuid.UUID;
import com.ruoyi.quot.domain.Quot;
import com.ruoyi.system.service.ISysDeptService;
import org.springframework.security.access.prepost.PreAuthorize;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
@ -44,6 +42,9 @@ public class BidController extends BaseController
@Autowired
private IBidFileService bidFileService;
@Autowired
private ISysDeptService deptService;
/**
* 分派
*/
@ -56,9 +57,9 @@ public class BidController extends BaseController
String receiveUserName = bid.getReceiveUserName();
for(String bidId:bidIds){
Bid entity = bidService.selectBidByBidId(bidId);
if(StringUtils.isNotEmpty(entity.getReceiveUserName())){
/* if(StringUtils.isNotEmpty(entity.getReceiveUserName())){
return error("投标信息:"+entity.getBidCode()+" 已分派");
}
}*/
entity.setReceiveUserName(receiveUserName);
bidService.updateBid(entity);
}
@ -74,17 +75,17 @@ public class BidController extends BaseController
{
startPage();
// 获取用户角色 --判断是否是投标小组经理角色
Boolean tbbRoleFlag = false;
// 获取用户角色 --判断是否是投标小组-标书制作员角色
Boolean bidBszzYRoleFlag = false;
List<SysRole> roles = SecurityUtils.getLoginUser().getUser().getRoles();
for(SysRole sysRole:roles){
String roleKey = sysRole.getRoleKey();
if("BID".equals(roleKey)){
tbbRoleFlag = true;
if("BID_BSZZY".equals(roleKey)){
bidBszzYRoleFlag = true;
break;
}
}
if(!tbbRoleFlag){
if(bidBszzYRoleFlag){
bid.setReceiveUserName(getUsername());
}
List<Bid> list = bidService.selectBidList(bid);
@ -237,8 +238,66 @@ public class BidController extends BaseController
String bid_id = bid.getBidId();
bid.setUpdateBy(getUsername());
// TODO 如果是事业部直营店 则提交OA审核 如果是业务员则提交投标办审批
// TODO 如果是事业部直营店 则提交OA审核 如果是业务员则提交投标办审批(1-直营店2-事业部)
Long deptId = getLoginUser().getUser().getDeptId();
SysDept sysDept = deptService.selectDeptById(deptId);
String zydSyb = sysDept.getZydSyb();
if("1".equals(zydSyb)||"2".equals(zydSyb)){
// 投标信息提交OA,插入中间表 sys_oa_bid
SysOaBid sysOaBid = new SysOaBid();
SysOaBid oauser = bidService.selectOAUserByUserName(getUsername());// 查询OA用户
if(oauser==null){
return error("该账户:"+getUsername()+"在OA中不存在");
}
sysOaBid.setUserId(oauser.getUserId());
sysOaBid.setDepartmentId(oauser.getDepartmentId());
sysOaBid.setSubmissionTime(DateUtils.getDate());
sysOaBid.setBidId(UUID.fastUUID().toString());
sysOaBid.setBidCode(bid.getBidCode());
sysOaBid.setBidSalesmanName(bid.getBidSalesmanName());
sysOaBid.setBidHasRegistration(bid.getBidHasRegistration());
sysOaBid.setBidRegistrationNumber(bid.getBidRegistrationNumber());
sysOaBid.setBidOpeningDate(bid.getBidOpeningDate());
sysOaBid.setBidOnlineQuotation(bid.getBidOnlineQuotation());
sysOaBid.setBidWebsite(bid.getBidWebsite());
sysOaBid.setBidTenderingUnit(bid.getBidTenderingUnit());
sysOaBid.setBidAgency(bid.getBidAgency());
sysOaBid.setBidProject(bid.getBidProject());
sysOaBid.setBidAuthorizedRepresentative(bid.getBidAuthorizedRepresentative());
sysOaBid.setBidAuthorizedPhone(bid.getBidAuthorizedPhone());
sysOaBid.setBidFilePaymentMethod(bid.getBidFilePaymentMethod());
sysOaBid.setBidPaymentDeviation(bid.getBidPaymentDeviation());
sysOaBid.setBidCopperPriceLinkage(bid.getBidCopperPriceLinkage());
sysOaBid.setBidPriceLinkageMethod(bid.getBidPriceLinkageMethod());
sysOaBid.setBidOtherRequire(bid.getBidOtherRequire());
sysOaBid.setBidRemark(bid.getBidRemark());
// 上传业务员附件
BidFile bidFile = new BidFile();
bidFile.setRelationId(bid.getBidId());
bidFile.setFileType("bidYwyFile");
List<BidFile> fileList = bidFileService.selectBidFileList(bidFile);
String fileString = "";
if(fileList!=null&&fileList.size()>0){
for(BidFile f:fileList){
String fileUrl = f.getFileUrl();
if(StringUtils.isEmpty(fileString)){
fileString = fileString+fileUrl;
}else{
fileString = fileString+","+fileUrl;
}
}
}
sysOaBid.setBidYwyFile(fileString);
sysOaBid.setCreateTime(DateUtils.getNowDate());
sysOaBid.setIsFinish("0");// 投标信息已提交OA审批中
bidService.insertSysOABid(sysOaBid);
bid.setBidApprovalStatus("4");
}else{
bid.setBidApprovalStatus("1");
}
if(StringUtils.isEmpty(bid_id)){
bid.setBidId(UUID.fastUUID().toString());

View File

@ -746,7 +746,6 @@ public class QuotController extends BaseController
}
sysOaQuot.setUserId(oauser.getUserId());
sysOaQuot.setDepartmentId(oauser.getUserId());
sysOaQuot.setDepartmentId(oauser.getDepartmentId());
sysOaQuot.setSubmissionTime(DateUtils.getDate());
sysOaQuot.setQuotId(UUID.fastUUID().toString());
@ -780,6 +779,7 @@ public class QuotController extends BaseController
}
}
sysOaQuot.setQuotFkFile(fileString);
sysOaQuot.setQuotTotalPrice(quot.getQuotTotalPrice());
sysOaQuot.setCreateTime(DateUtils.getNowDate());
sysOaQuot.setIsFinish("0");// 报价已提交OA审批中

View File

@ -46,6 +46,9 @@ public class SysDept extends BaseEntity
/** 部门状态:0正常,1停用 */
private String status;
/** 直营店、事业部 */
private String zydSyb;
/** 删除标志0代表存在 2代表删除 */
private String delFlag;
@ -151,6 +154,10 @@ public class SysDept extends BaseEntity
this.status = status;
}
public String getZydSyb() { return zydSyb; }
public void setZydSyb(String zydSyb) { this.zydSyb = zydSyb; }
public String getDelFlag()
{
return delFlag;

View File

@ -5,6 +5,8 @@ import org.apache.commons.lang3.builder.ToStringStyle;
import com.ruoyi.common.annotation.Excel;
import com.ruoyi.common.core.domain.BaseEntity;
import java.util.Date;
/**
* 投标信息对象 bid
*
@ -33,6 +35,15 @@ public class Bid extends BaseEntity
@Excel(name = "业务员")
private String bidSalesmanName;
/** 部门ID */
private String bidSalesmanDeptId;
/** 部门名称 */
private String bidSalesmanDeptName;
/** 是否报名 */
private String bidHasRegistration;
/** 原报名编号 */
@Excel(name = "原报名编号")
private String bidRegistrationNumber;
@ -214,6 +225,15 @@ public class Bid extends BaseEntity
public String getBidSalesmanName() { return bidSalesmanName; }
public void setBidSalesmanName(String bidSalesmanName) { this.bidSalesmanName = bidSalesmanName; }
public String getBidSalesmanDeptId() { return bidSalesmanDeptId; }
public void setBidSalesmanDeptId(String bidSalesmanDeptId) { this.bidSalesmanDeptId = bidSalesmanDeptId; }
public String getBidSalesmanDeptName() { return bidSalesmanDeptName; }
public void setBidSalesmanDeptName(String bidSalesmanDeptName) { this.bidSalesmanDeptName = bidSalesmanDeptName; }
public String getBidHasRegistration() { return bidHasRegistration; }
public void setBidHasRegistration(String bidHasRegistration) { this.bidHasRegistration = bidHasRegistration; }
public void setBidRegistrationNumber(String bidRegistrationNumber) { this.bidRegistrationNumber = bidRegistrationNumber; }
public String getBidRegistrationNumber()

View File

@ -0,0 +1,281 @@
package com.ruoyi.bid.domain;
import com.ruoyi.common.core.domain.BaseEntity;
import com.ruoyi.quot.domain.QuotMaterial;
import java.util.Date;
import java.util.List;
/**
* 报价对象 SysOaBid
*
* @author ruoyi
* @date 2024-04-01
*/
public class SysOaBid extends BaseEntity
{
private static final long serialVersionUID = 1L;
/** oa用户id */
private Integer userId;
/** oa部门ID */
private Integer departmentId;
/** 提交oa时间 */
private String submissionTime;
/** 投标信息ID */
private String bidId;
/** 投标信息ID单号 */
private String bidCode;
/** 业务员 */
private String bidSalesmanName;
/** 是否报名 */
private String bidHasRegistration;
/** 原报名编号 */
private String bidRegistrationNumber;
/** 开标日期 */
private String bidOpeningDate;
/** 是否网上报价 */
private String bidOnlineQuotation;
/** 报价平台网址 */
private String bidWebsite;
/** 招标单位 */
private String bidTenderingUnit;
/** 招标代理 */
private String bidAgency;
/** 项目名称 */
private String bidProject;
/** 授权代表 */
private String bidAuthorizedRepresentative;
/** 授权人联系方式 */
private String bidAuthorizedPhone;
/** 招标文件付款方式 */
private String bidFilePaymentMethod;
/** 投标付款偏差 */
private String bidPaymentDeviation;
/** 是否铜价联动 */
private String bidCopperPriceLinkage;
/** 价格联动方式 */
private String bidPriceLinkageMethod;
/** 其他投标要求*/
private String bidOtherRequire;
/** 备注*/
private String bidRemark;
/** 业务员附件*/
private String bidYwyFile;
/** 审批状态*/
private String state;
/** 审批备注*/
private String remark;
/** 投标信息审核状态*/
private String isFinish;
public Integer getUserId() {
return userId;
}
public void setUserId(Integer userId) {
this.userId = userId;
}
public Integer getDepartmentId() {
return departmentId;
}
public void setDepartmentId(Integer departmentId) {
this.departmentId = departmentId;
}
public String getSubmissionTime() {
return submissionTime;
}
public void setSubmissionTime(String submissionTime) {
this.submissionTime = submissionTime;
}
public String getBidId() {
return bidId;
}
public void setBidId(String bidId) {
this.bidId = bidId;
}
public String getBidCode() {
return bidCode;
}
public void setBidCode(String bidCode) {
this.bidCode = bidCode;
}
public String getBidSalesmanName() {
return bidSalesmanName;
}
public void setBidSalesmanName(String bidSalesmanName) {
this.bidSalesmanName = bidSalesmanName;
}
public String getBidHasRegistration() {
return bidHasRegistration;
}
public void setBidHasRegistration(String bidHasRegistration) {
this.bidHasRegistration = bidHasRegistration;
}
public String getBidRegistrationNumber() {
return bidRegistrationNumber;
}
public void setBidRegistrationNumber(String bidRegistrationNumber) {
this.bidRegistrationNumber = bidRegistrationNumber;
}
public String getBidOpeningDate() {
return bidOpeningDate;
}
public void setBidOpeningDate(String bidOpeningDate) {
this.bidOpeningDate = bidOpeningDate;
}
public String getBidOnlineQuotation() {
return bidOnlineQuotation;
}
public void setBidOnlineQuotation(String bidOnlineQuotation) {
this.bidOnlineQuotation = bidOnlineQuotation;
}
public String getBidWebsite() {
return bidWebsite;
}
public void setBidWebsite(String bidWebsite) {
this.bidWebsite = bidWebsite;
}
public String getBidTenderingUnit() {
return bidTenderingUnit;
}
public void setBidTenderingUnit(String bidTenderingUnit) {
this.bidTenderingUnit = bidTenderingUnit;
}
public String getBidAgency() {
return bidAgency;
}
public void setBidAgency(String bidAgency) {
this.bidAgency = bidAgency;
}
public String getBidProject() {
return bidProject;
}
public void setBidProject(String bidProject) {
this.bidProject = bidProject;
}
public String getBidAuthorizedRepresentative() {
return bidAuthorizedRepresentative;
}
public void setBidAuthorizedRepresentative(String bidAuthorizedRepresentative) {
this.bidAuthorizedRepresentative = bidAuthorizedRepresentative;
}
public String getBidAuthorizedPhone() {
return bidAuthorizedPhone;
}
public void setBidAuthorizedPhone(String bidAuthorizedPhone) {
this.bidAuthorizedPhone = bidAuthorizedPhone;
}
public String getBidFilePaymentMethod() {
return bidFilePaymentMethod;
}
public void setBidFilePaymentMethod(String bidFilePaymentMethod) {
this.bidFilePaymentMethod = bidFilePaymentMethod;
}
public String getBidPaymentDeviation() {
return bidPaymentDeviation;
}
public void setBidPaymentDeviation(String bidPaymentDeviation) {
this.bidPaymentDeviation = bidPaymentDeviation;
}
public String getBidCopperPriceLinkage() {
return bidCopperPriceLinkage;
}
public void setBidCopperPriceLinkage(String bidCopperPriceLinkage) {
this.bidCopperPriceLinkage = bidCopperPriceLinkage;
}
public String getBidPriceLinkageMethod() {
return bidPriceLinkageMethod;
}
public void setBidPriceLinkageMethod(String bidPriceLinkageMethod) {
this.bidPriceLinkageMethod = bidPriceLinkageMethod;
}
public String getBidOtherRequire() {
return bidOtherRequire;
}
public void setBidOtherRequire(String bidOtherRequire) {
this.bidOtherRequire = bidOtherRequire;
}
public String getBidRemark() {
return bidRemark;
}
public void setBidRemark(String bidRemark) {
this.bidRemark = bidRemark;
}
public String getBidYwyFile() {
return bidYwyFile;
}
public void setBidYwyFile(String bidYwyFile) {
this.bidYwyFile = bidYwyFile;
}
public String getState() {
return state;
}
public void setState(String state) {
this.state = state;
}
@Override
public String getRemark() {
return remark;
}
@Override
public void setRemark(String remark) {
this.remark = remark;
}
public String getIsFinish() {
return isFinish;
}
public void setIsFinish(String isFinish) {
this.isFinish = isFinish;
}
}

View File

@ -2,6 +2,7 @@ package com.ruoyi.bid.mapper;
import java.util.List;
import com.ruoyi.bid.domain.Bid;
import com.ruoyi.bid.domain.SysOaBid;
/**
* 投标信息Mapper接口
@ -65,4 +66,16 @@ public interface BidMapper
* @return
*/
String getCode(String type);
/**
* 查询OA用户
* @return
*/
SysOaBid selectOAUserByUserName(String loginid);
/**
* 投标信息提交OA,插入中间表 sys_oa_bid
* @param sysOaBid
*/
void insertSysOABid(SysOaBid sysOaBid);
}

View File

@ -2,6 +2,7 @@ package com.ruoyi.bid.service;
import java.util.List;
import com.ruoyi.bid.domain.Bid;
import com.ruoyi.bid.domain.SysOaBid;
/**
* 投标信息Service接口
@ -61,8 +62,20 @@ public interface IBidService
/**
* 获取单据编号
* @param bjd
* @param type
* @return
*/
String getCode(String type);
/**
* 查询OA用户
* @return
*/
SysOaBid selectOAUserByUserName(String username);
/**
* 投标信息提交OA,插入中间表 sys_oa_bid
* @param sysOaBid
*/
void insertSysOABid(SysOaBid sysOaBid);
}

View File

@ -2,7 +2,10 @@ package com.ruoyi.bid.service.impl;
import java.util.List;
import com.ruoyi.bid.domain.SysOaBid;
import com.ruoyi.common.annotation.DataScope;
import com.ruoyi.common.annotation.DataSource;
import com.ruoyi.common.enums.DataSourceType;
import com.ruoyi.common.utils.DateUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
@ -107,4 +110,23 @@ public class BidServiceImpl implements IBidService
public String getCode(String type) {
return bidMapper.getCode(type);
}
/**
* 查询OA用户
* @return
*/
@Override
@DataSource(DataSourceType.OA)
public SysOaBid selectOAUserByUserName(String loginid) {
return bidMapper.selectOAUserByUserName(loginid);
}
/**
* 投标信息提交OA,插入中间表 sys_oa_bid
* @param sysOaBid
*/
@Override
public void insertSysOABid(SysOaBid sysOaBid) {
bidMapper.insertSysOABid(sysOaBid);
}
}

View File

@ -66,6 +66,9 @@ public class SysOaQuot extends BaseEntity
/** 询价单-询价清单地址 */
private String quotFkFile;
/** 总价 */
private String quotTotalPrice;
/** OA审批状态 */
private String state;
@ -204,6 +207,10 @@ public class SysOaQuot extends BaseEntity
public void setQuotFkFile(String quotFkFile) { this.quotFkFile = quotFkFile; }
public String getQuotTotalPrice() { return quotTotalPrice; }
public void setQuotTotalPrice(String quotTotalPrice) { this.quotTotalPrice = quotTotalPrice; }
public String getState() { return state; }
public void setState(String state) { this.state = state; }

View File

@ -10,6 +10,9 @@
<result property="bidSalesmanCode" column="bid_salesman_code" />
<result property="bidSalesmanBm" column="bid_salesman_bm" />
<result property="bidSalesmanName" column="bid_salesman_name" />
<result property="bidSalesmanDeptId" column="bid_salesman_dept_id" />
<result property="bidSalesmanDeptName" column="bid_salesman_dept_name" />
<result property="bidHasRegistration" column="bid_has_registration" />
<result property="bidRegistrationNumber" column="bid_registration_number" />
<result property="bidOpeningDate" column="bid_opening_date" />
<result property="bidOnlineQuotation" column="bid_online_quotation" />
@ -71,7 +74,7 @@
<sql id="selectBidVo">
select a.bid_id, a.bid_code,a.bid_salesman_code, a.bid_salesman_bm, a.bid_salesman_name,
a.bid_registration_number, a.bid_opening_date,
a.bid_salesman_dept_id, a.bid_salesman_dept_name,a.bid_has_registration,a.bid_registration_number, a.bid_opening_date,
a.bid_online_quotation, a.bid_website, a.bid_tendering_unit_bm,a.bid_tendering_unit, a.bid_agency,
a.bid_project, a.bid_authorized_representative, a.bid_authorized_phone,
a.bid_file_payment_method, a.bid_payment_deviation, a.bid_copper_price_linkage,
@ -118,6 +121,9 @@
<if test="bidSalesmanCode != null and bidSalesmanCode != ''">bid_salesman_code,</if>
<if test="bidSalesmanBm != null and bidSalesmanBm != ''">bid_salesman_bm,</if>
<if test="bidSalesmanName != null and bidSalesmanName != ''">bid_salesman_name,</if>
<if test="bidSalesmanDeptId != null and bidSalesmanDeptId != ''">bid_salesman_dept_id,</if>
<if test="bidSalesmanDeptName != null and bidSalesmanDeptName != ''">bid_salesman_dept_name,</if>
<if test="bidHasRegistration != null and bidHasRegistration != ''">bid_has_registration,</if>
<if test="bidRegistrationNumber != null and bidRegistrationNumber != ''">bid_registration_number,</if>
<if test="bidOpeningDate != null and bidOpeningDate != ''">bid_opening_date,</if>
<if test="bidOnlineQuotation != null and bidOnlineQuotation != ''">bid_online_quotation,</if>
@ -176,6 +182,9 @@
<if test="bidSalesmanCode != null and bidSalesmanCode != ''">#{bidSalesmanCode},</if>
<if test="bidSalesmanBm != null and bidSalesmanBm != ''">#{bidSalesmanBm},</if>
<if test="bidSalesmanName != null and bidSalesmanName != ''">#{bidSalesmanName},</if>
<if test="bidSalesmanDeptId != null and bidSalesmanDeptId != ''">#{bidSalesmanDeptId},</if>
<if test="bidSalesmanDeptName != null and bidSalesmanDeptName != ''">#{bidSalesmanDeptName},</if>
<if test="bidHasRegistration != null and bidHasRegistration != ''">#{bidHasRegistration},</if>
<if test="bidRegistrationNumber != null and bidRegistrationNumber != ''">#{bidRegistrationNumber},</if>
<if test="bidOpeningDate != null and bidOpeningDate != ''">#{bidOpeningDate},</if>
<if test="bidOnlineQuotation != null and bidOnlineQuotation != ''">#{bidOnlineQuotation},</if>
@ -230,6 +239,64 @@
</trim>
</insert>
<insert id="insertSysOABid" parameterType="Bid">
insert into sys_oa_bid
<trim prefix="(" suffix=")" suffixOverrides=",">
<if test="userId != null and userId != ''">user_id,</if>
<if test="departmentId != null and departmentId != ''">department_id,</if>
<if test="submissionTime != null and submissionTime != ''">submission_time,</if>
<if test="bidId != null">bid_id,</if>
<if test="bidCode != null and bidCode != ''">bid_code,</if>
<if test="bidSalesmanName != null and bidSalesmanName != ''">bid_salesman_name,</if>
<if test="bidHasRegistration != null and bidHasRegistration != ''">bid_has_registration,</if>
<if test="bidRegistrationNumber != null and bidRegistrationNumber != ''">bid_registration_number,</if>
<if test="bidOpeningDate != null and bidOpeningDate != ''">bid_opening_date,</if>
<if test="bidOnlineQuotation != null and bidOnlineQuotation != ''">bid_online_quotation,</if>
<if test="bidWebsite != null and bidWebsite != ''">bid_website,</if>
<if test="bidTenderingUnit != null and bidTenderingUnit != ''">bid_tendering_unit,</if>
<if test="bidAgency != null and bidAgency != ''">bid_agency,</if>
<if test="bidProject != null and bidProject != ''">bid_project,</if>
<if test="bidAuthorizedRepresentative != null and bidAuthorizedRepresentative != ''">bid_authorized_representative,</if>
<if test="bidAuthorizedPhone != null and bidAuthorizedPhone != ''">bid_authorized_phone,</if>
<if test="bidFilePaymentMethod != null and bidFilePaymentMethod != ''">bid_file_payment_method,</if>
<if test="bidPaymentDeviation != null and bidPaymentDeviation != ''">bid_payment_deviation,</if>
<if test="bidCopperPriceLinkage != null and bidCopperPriceLinkage != ''">bid_copper_price_linkage,</if>
<if test="bidPriceLinkageMethod != null and bidPriceLinkageMethod != ''">bid_price_linkage_method,</if>
<if test="bidOtherRequire != null and bidOtherRequire != ''">bid_other_require,</if>
<if test="bidRemark != null and bidRemark != ''">bid_remark,</if>
<if test="bidYwyFile != null and bidYwyFile != ''">bid_ywy_file,</if>
<if test="createTime != null">create_time,</if>
<if test="isFinish != null and isFinish != ''">isFinish,</if>
</trim>
<trim prefix="values (" suffix=")" suffixOverrides=",">
<if test="userId != null and userId != ''">#{userId},</if>
<if test="departmentId != null and departmentId != ''">#{departmentId},</if>
<if test="submissionTime != null and submissionTime != ''">#{submissionTime},</if>
<if test="bidId != null">#{bidId},</if>
<if test="bidCode != null and bidCode != ''">#{bidCode},</if>
<if test="bidSalesmanName != null and bidSalesmanName != ''">#{bidSalesmanName},</if>
<if test="bidHasRegistration != null and bidHasRegistration != ''">#{bidHasRegistration},</if>
<if test="bidRegistrationNumber != null and bidRegistrationNumber != ''">#{bidRegistrationNumber},</if>
<if test="bidOpeningDate != null and bidOpeningDate != ''">#{bidOpeningDate},</if>
<if test="bidOnlineQuotation != null and bidOnlineQuotation != ''">#{bidOnlineQuotation},</if>
<if test="bidWebsite != null and bidWebsite != ''">#{bidWebsite},</if>
<if test="bidTenderingUnit != null and bidTenderingUnit != ''">#{bidTenderingUnit},</if>
<if test="bidAgency != null and bidAgency != ''">#{bidAgency},</if>
<if test="bidProject != null and bidProject != ''">#{bidProject},</if>
<if test="bidAuthorizedRepresentative != null and bidAuthorizedRepresentative != ''">#{bidAuthorizedRepresentative},</if>
<if test="bidAuthorizedPhone != null and bidAuthorizedPhone != ''">#{bidAuthorizedPhone},</if>
<if test="bidFilePaymentMethod != null and bidFilePaymentMethod != ''">#{bidFilePaymentMethod},</if>
<if test="bidPaymentDeviation != null and bidPaymentDeviation != ''">#{bidPaymentDeviation},</if>
<if test="bidCopperPriceLinkage != null and bidCopperPriceLinkage != ''">#{bidCopperPriceLinkage},</if>
<if test="bidPriceLinkageMethod != null and bidPriceLinkageMethod != ''">#{bidPriceLinkageMethod},</if>
<if test="bidOtherRequire != null and bidOtherRequire != ''">#{bidOtherRequire},</if>
<if test="bidRemark != null and bidRemark != ''">#{bidRemark},</if>
<if test="bidYwyFile != null and bidYwyFile != ''">#{bidYwyFile},</if>
<if test="createTime != null">#{createTime},</if>
<if test="isFinish != null and isFinish != ''">#{isFinish},</if>
</trim>
</insert>
<update id="updateBid" parameterType="Bid">
update bid
<trim prefix="SET" suffixOverrides=",">
@ -237,52 +304,55 @@
<if test="bidSalesmanCode != null and bidSalesmanCode != ''">bid_salesman_code = #{bidSalesmanCode},</if>
<if test="bidSalesmanBm != null and bidSalesmanBm != ''">bid_salesman_bm = #{bidSalesmanBm},</if>
<if test="bidSalesmanName != null and bidSalesmanName != ''">bid_salesman_name = #{bidSalesmanName},</if>
<if test="bidRegistrationNumber != null and bidRegistrationNumber != ''">bid_registration_number = #{bidRegistrationNumber},</if>
<if test="bidSalesmanDeptId != null and bidSalesmanDeptId != ''">bid_salesman_dept_id = #{bidSalesmanDeptId},</if>
<if test="bidSalesmanDeptName != null and bidSalesmanDeptName != ''">bid_salesman_dept_name = #{bidSalesmanDeptName},</if>
<if test="bidHasRegistration != null and bidHasRegistration != ''">bid_has_registration = #{bidHasRegistration},</if>
<if test="bidRegistrationNumber != null">bid_registration_number = #{bidRegistrationNumber},</if>
<if test="bidOpeningDate != null and bidOpeningDate != ''">bid_opening_date = #{bidOpeningDate},</if>
<if test="bidOnlineQuotation != null and bidOnlineQuotation != ''">bid_online_quotation = #{bidOnlineQuotation},</if>
<if test="bidWebsite != null and bidWebsite != ''">bid_website = #{bidWebsite},</if>
<if test="bidWebsite != null">bid_website = #{bidWebsite},</if>
<if test="bidTenderingUnitBm != null and bidTenderingUnitBm != ''">bid_tendering_unit_bm = #{bidTenderingUnitBm},</if>
<if test="bidTenderingUnit != null and bidTenderingUnit != ''">bid_tendering_unit = #{bidTenderingUnit},</if>
<if test="bidAgency != null and bidAgency != ''">bid_agency = #{bidAgency},</if>
<if test="bidAgency != null">bid_agency = #{bidAgency},</if>
<if test="bidProject != null and bidProject != ''">bid_project = #{bidProject},</if>
<if test="bidAuthorizedRepresentative != null and bidAuthorizedRepresentative != ''">bid_authorized_representative = #{bidAuthorizedRepresentative},</if>
<if test="bidAuthorizedPhone != null and bidAuthorizedPhone != ''">bid_authorized_phone = #{bidAuthorizedPhone},</if>
<if test="bidFilePaymentMethod != null and bidFilePaymentMethod != ''">bid_file_payment_method = #{bidFilePaymentMethod},</if>
<if test="bidPaymentDeviation != null and bidPaymentDeviation != ''">bid_payment_deviation = #{bidPaymentDeviation},</if>
<if test="bidCopperPriceLinkage != null and bidCopperPriceLinkage != ''">bid_copper_price_linkage = #{bidCopperPriceLinkage},</if>
<if test="bidPriceLinkageMethod != null and bidPriceLinkageMethod != ''">bid_price_linkage_method = #{bidPriceLinkageMethod},</if>
<if test="bidOtherRequire != null and bidOtherRequire != ''">bid_other_require = #{bidOtherRequire},</if>
<if test="bidWinningAmount != null and bidWinningAmount != ''">bid_winning_amount = #{bidWinningAmount},</if>
<if test="bidCopperCableAmount != null and bidCopperCableAmount != ''">bid_copper_cable_amount = #{bidCopperCableAmount},</if>
<if test="bidAluminumCableAmount != null and bidAluminumCableAmount != ''">bid_aluminum_cable_amount = #{bidAluminumCableAmount},</if>
<if test="bidOpenClose != null and bidOpenClose != ''">bid_open_close = #{bidOpenClose},</if>
<if test="bidPriceAdjustmentNotice != null and bidPriceAdjustmentNotice != ''">bid_price_adjustment_notice = #{bidPriceAdjustmentNotice},</if>
<if test="bidValidityPeriod != null and bidValidityPeriod != ''">bid_validity_period = #{bidValidityPeriod},</if>
<if test="bidTongPrice != null and bidTongPrice != ''">bid_tong_price = #{bidTongPrice},</if>
<if test="bidLvPrice != null and bidLvPrice != ''">bid_lv_price = #{bidLvPrice},</if>
<if test="bidDs != null and bidDs != ''">bid_ds = #{bidDs},</if>
<if test="bidFactoryPrice != null and bidFactoryPrice != ''">bid_factory_price = #{bidFactoryPrice},</if>
<if test="bidPrice != null and bidPrice != ''">bid_price = #{bidPrice},</if>
<if test="bidBusinessSettlement != null and bidBusinessSettlement != ''">bid_business_settlement = #{bidBusinessSettlement},</if>
<if test="bidBond != null and bidBond != ''">bid_bond = #{bidBond},</if>
<if test="bidWinningServiceFee != null and bidWinningServiceFee != ''">bid_winning_service_fee = #{bidWinningServiceFee},</if>
<if test="bidPerformanceBond != null and bidPerformanceBond != ''">bid_performance_bond = #{bidPerformanceBond},</if>
<if test="bidDeliveryDate != null and bidDeliveryDate != ''">bid_delivery_date = #{bidDeliveryDate},</if>
<if test="bidWarrantyPeriod != null and bidWarrantyPeriod != ''">bid_warranty_period = #{bidWarrantyPeriod},</if>
<if test="bidBidding != null and bidBidding != ''">bid_bidding = #{bidBidding},</if>
<if test="bidEvaluationMethod != null and bidEvaluationMethod != ''">bid_evaluation_method = #{bidEvaluationMethod},</if>
<if test="bidTechnicalRequire != null and bidTechnicalRequire != ''">bid_technical_require = #{bidTechnicalRequire},</if>
<if test="bidPriceLinkage != null and bidPriceLinkage != ''">bid_price_linkage = #{bidPriceLinkage},</if>
<if test="bidPaymentMethod != null and bidPaymentMethod != ''">bid_payment_method = #{bidPaymentMethod},</if>
<if test="bidOtherMatters != null and bidOtherMatters != ''">bid_other_matters = #{bidOtherMatters},</if>
<if test="bidZbr != null and bidZbr != ''">bid_zbr = #{bidZbr},</if>
<if test="bidJdr != null and bidJdr != ''">bid_jdr = #{bidJdr},</if>
<if test="bidShr != null and bidShr != ''">bid_shr = #{bidShr},</if>
<if test="bidApprovalStatus != null and bidApprovalStatus != ''">bid_approval_status = #{bidApprovalStatus},</if>
<if test="bidNotificationAward != null and bidNotificationAward != ''">bid_notification_award = #{bidNotificationAward},</if>
<if test="bidRemark != null and bidRemark != ''">bid_remark = #{bidRemark},</if>
<if test="bidReturnRemark != null and bidReturnRemark != ''">bid_returnRemark = #{bidReturnRemark},</if>
<if test="receiveUserName != null and receiveUserName != ''">receive_user_name = #{receiveUserName},</if>
<if test="bidPriceLinkageMethod != null">bid_price_linkage_method = #{bidPriceLinkageMethod},</if>
<if test="bidOtherRequire != null">bid_other_require = #{bidOtherRequire},</if>
<if test="bidWinningAmount != null">bid_winning_amount = #{bidWinningAmount},</if>
<if test="bidCopperCableAmount != null">bid_copper_cable_amount = #{bidCopperCableAmount},</if>
<if test="bidAluminumCableAmount != null">bid_aluminum_cable_amount = #{bidAluminumCableAmount},</if>
<if test="bidOpenClose != null">bid_open_close = #{bidOpenClose},</if>
<if test="bidPriceAdjustmentNotice != null">bid_price_adjustment_notice = #{bidPriceAdjustmentNotice},</if>
<if test="bidValidityPeriod != null">bid_validity_period = #{bidValidityPeriod},</if>
<if test="bidTongPrice != null">bid_tong_price = #{bidTongPrice},</if>
<if test="bidLvPrice != null">bid_lv_price = #{bidLvPrice},</if>
<if test="bidDs != null">bid_ds = #{bidDs},</if>
<if test="bidFactoryPrice != null">bid_factory_price = #{bidFactoryPrice},</if>
<if test="bidPrice != null">bid_price = #{bidPrice},</if>
<if test="bidBusinessSettlement != null">bid_business_settlement = #{bidBusinessSettlement},</if>
<if test="bidBond != null">bid_bond = #{bidBond},</if>
<if test="bidWinningServiceFee != null">bid_winning_service_fee = #{bidWinningServiceFee},</if>
<if test="bidPerformanceBond != null">bid_performance_bond = #{bidPerformanceBond},</if>
<if test="bidDeliveryDate != null">bid_delivery_date = #{bidDeliveryDate},</if>
<if test="bidWarrantyPeriod != null">bid_warranty_period = #{bidWarrantyPeriod},</if>
<if test="bidBidding != null">bid_bidding = #{bidBidding},</if>
<if test="bidEvaluationMethod != null">bid_evaluation_method = #{bidEvaluationMethod},</if>
<if test="bidTechnicalRequire != null">bid_technical_require = #{bidTechnicalRequire},</if>
<if test="bidPriceLinkage != null">bid_price_linkage = #{bidPriceLinkage},</if>
<if test="bidPaymentMethod != null">bid_payment_method = #{bidPaymentMethod},</if>
<if test="bidOtherMatters != null">bid_other_matters = #{bidOtherMatters},</if>
<if test="bidZbr != null">bid_zbr = #{bidZbr},</if>
<if test="bidJdr != null">bid_jdr = #{bidJdr},</if>
<if test="bidShr != null">bid_shr = #{bidShr},</if>
<if test="bidApprovalStatus != null">bid_approval_status = #{bidApprovalStatus},</if>
<if test="bidNotificationAward != null">bid_notification_award = #{bidNotificationAward},</if>
<if test="bidRemark != null">bid_remark = #{bidRemark},</if>
<if test="bidReturnRemark != null">bid_returnRemark = #{bidReturnRemark},</if>
<if test="receiveUserName != null">receive_user_name = #{receiveUserName},</if>
<if test="createBy != null">create_by = #{createBy},</if>
<if test="createTime != null">create_time = #{createTime},</if>
@ -306,4 +376,8 @@
<select id="getCode" resultType="String" statementType="CALLABLE">
{call GetSerialNo(#{type,mode=IN,jdbcType=VARCHAR})}
</select>
<select id="selectOAUserByUserName" resultType="SysOaBid">
select top 1 id as userId,departmentid as departmentId from HrmResource where loginid = #{loginid}
</select>
</mapper>

View File

@ -351,6 +351,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
<if test="quotMatpriceDiff != null and quotMatpriceDiff != ''">quot_matprice_diff,</if>
<if test="quotMatpriceDiff2 != null and quotMatpriceDiff2 != ''">quot_matprice_diff2,</if>
<if test="quotFkFile != null and quotFkFile != ''">quot_fk_file,</if>
<if test="quotTotalPrice != null and quotTotalPrice != ''">quot_total_price,</if>
<if test="createTime != null">create_time,</if>
<if test="isFinish != null and isFinish != ''">isFinish,</if>
@ -373,6 +374,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
<if test="quotMatpriceDiff != null and quotMatpriceDiff != ''">#{quotMatpriceDiff},</if>
<if test="quotMatpriceDiff2 != null and quotMatpriceDiff2 != ''">#{quotMatpriceDiff2},</if>
<if test="quotFkFile != null and quotFkFile != ''">#{quotFkFile},</if>
<if test="quotTotalPrice != null and quotTotalPrice != ''">#{quotTotalPrice},</if>
<if test="createTime != null">#{createTime},</if>
<if test="isFinish != null and isFinish != ''">#{isFinish},</if>

View File

@ -14,6 +14,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
<result property="phone" column="phone" />
<result property="email" column="email" />
<result property="status" column="status" />
<result property="zydSyb" column="zyd_syb" />
<result property="delFlag" column="del_flag" />
<result property="parentName" column="parent_name" />
<result property="createBy" column="create_by" />
@ -23,7 +24,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
</resultMap>
<sql id="selectDeptVo">
select d.dept_id, d.parent_id, d.ancestors, d.dept_name, d.order_num, d.leader, d.phone, d.email, d.status, d.del_flag, d.create_by, d.create_time
select d.dept_id, d.parent_id, d.ancestors, d.dept_name, d.order_num, d.leader, d.phone, d.email, d.status, d.zyd_syb,d.del_flag, d.create_by, d.create_time
from sys_dept d
</sql>
@ -59,7 +60,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
</select>
<select id="selectDeptById" parameterType="Long" resultMap="SysDeptResult">
select d.dept_id, d.parent_id, d.ancestors, d.dept_name, d.order_num, d.leader, d.phone, d.email, d.status,
select d.dept_id, d.parent_id, d.ancestors, d.dept_name, d.order_num, d.leader, d.phone, d.email, d.status,d.zyd_syb,
(select dept_name from sys_dept where dept_id = d.parent_id) parent_name
from sys_dept d
where d.dept_id = #{deptId}
@ -99,6 +100,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
<if test="phone != null and phone != ''">phone,</if>
<if test="email != null and email != ''">email,</if>
<if test="status != null">status,</if>
<if test="zydSyb != null">zyd_syb,</if>
<if test="createBy != null and createBy != ''">create_by,</if>
create_time
)values(
@ -111,6 +113,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
<if test="phone != null and phone != ''">#{phone},</if>
<if test="email != null and email != ''">#{email},</if>
<if test="status != null">#{status},</if>
<if test="zydSyb != null">#{zydSyb},</if>
<if test="createBy != null and createBy != ''">#{createBy},</if>
getdate()
)
@ -127,6 +130,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
<if test="phone != null">phone = #{phone},</if>
<if test="email != null">email = #{email},</if>
<if test="status != null and status != ''">status = #{status},</if>
<if test="zydSyb != null">zyd_syb = #{zydSyb},</if>
<if test="updateBy != null and updateBy != ''">update_by = #{updateBy},</if>
update_time = getdate()
</set>

View File

@ -130,26 +130,39 @@
<dict-tag :options="dict.type.bid_approval_status" :value="scope.row.bidApprovalStatus"/>
</template>
</el-table-column>
<el-table-column label="分派状态" align="center" prop="receiveUserName" width="120px" v-if="checkRole(['BID'])">
<template slot-scope="scope">
<span v-if="scope.row.receiveUserName">已分派{{scope.row.receiveUserName}}</span>
<span v-else>
未分派
</span>
</template>
</el-table-column>
<el-table-column label="原报名编号" align="center" prop="bidRegistrationNumber" width="200px"/>
<el-table-column label="业务员" align="center" prop="bidSalesmanName" width="150px"/>
<el-table-column label="是否网上报价" align="center" prop="bidOnlineQuotation" width="150px">
<template slot-scope="scope">
<dict-tag :options="dict.type.bid_online_quotation" :value="scope.row.bidOnlineQuotation"/>
</template>
</el-table-column>
<el-table-column label="开标日期" align="center" prop="bidOpeningDate" width="180">
<template slot-scope="scope">
<span>{{ parseTime(scope.row.bidOpeningDate, '{y}-{m}-{d}') }}</span>
</template>
</el-table-column>
<el-table-column label="招标单位" align="center" prop="bidTenderingUnit" width="250px" />
<el-table-column label="招标代理" align="center" prop="bidAgency" width="250px" />
<el-table-column label="项目名称" align="center" prop="bidProject" width="250px" />
<el-table-column label="招标代理" align="center" prop="bidAgency" width="250px" />
<el-table-column label="授权代表" align="center" prop="bidAuthorizedRepresentative" width="100px" />
<el-table-column label="制标人" align="center" prop="bidZbr" width="100px" />
<el-table-column label="创建人" align="center" prop="createName" width="150px"/>
<el-table-column label="创建时间" align="center" prop="createTime" width="160">
<template slot-scope="scope">
<span>{{ parseTime(scope.row.createTime) }}</span>
</template>
</el-table-column>
<el-table-column label="制标人" align="center" prop="bidZbr" width="100px" />
<el-table-column label="校对人" align="center" prop="bidJdr" width="100px" />
<el-table-column label="审核人" align="center" prop="bidShr" width="100px" />
<!--<el-table-column label="校对人" align="center" prop="bidJdr" width="100px" />
<el-table-column label="审核人" align="center" prop="bidShr" width="100px" />-->
</el-table>
</div>
@ -181,21 +194,39 @@
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item label="原报名编号" prop="bidRegistrationNumber">
<el-input v-model="form.bidRegistrationNumber" placeholder="请输入原报名编号" :disabled="this.form.bidApprovalStatus != '0' && this.form.bidApprovalStatus != null"/>
<el-form-item label="是否报名" prop="bidHasRegistration">
<el-select v-model="form.bidHasRegistration" :disabled="this.form.bidApprovalStatus != '0' && this.form.bidApprovalStatus != null">
<el-option
v-for="dict in dict.type.bid_has_registration"
:key="dict.value"
:label="dict.label"
:value="dict.value"
@click.native="bidHasRegistrationChange(dict.value)"/>
</el-select>
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item label="原报名编号" prop="bidRegistrationNumber">
<el-input v-model="form.bidRegistrationNumber" placeholder="请输入原报名编号" :disabled="(this.form.bidApprovalStatus != '0' && this.form.bidApprovalStatus != null) || this.form.bidHasRegistration!='0'"/>
</el-form-item>
</el-col>
</el-row>
<el-row :gutter="8">
<el-col :span="8">
<el-form-item label="业务员" prop="bidSalesmanName">
<el-input v-model="form.bidSalesmanName" :disabled="true" style="width: 60%"/>
<el-input v-model="form.bidSalesmanBm" v-if="false"/>
<el-input v-model="form.bidSalesmanCode" v-if="false"/>
<el-button type="primary" icon="el-icon-search" style="margin-left: 10px" @click="openPeopleSelect" size="mini" v-if="checkRole(['BID'])"></el-button>
<el-button type="primary" icon="el-icon-search" style="margin-left: 10px" @click="openPeopleSelectYwy" size="mini" v-if="checkRole(['BID'])"></el-button>
</el-form-item>
</el-col>
<el-col :span="8" v-if="false">
<el-form-item label="所属部门" prop="bidSalesmanDeptName">
<el-input v-model="form.bidSalesmanDeptId" v-if="false"/>
<el-input v-model="form.bidSalesmanDeptName" :disabled="true"/>
</el-form-item>
</el-col>
</el-row>
<el-row :gutter="8">
<el-col :span="8">
<el-form-item label="开标日期" prop="bidOpeningDate">
<el-date-picker clearable
@ -218,14 +249,14 @@
</el-select>
</el-form-item>
</el-col>
</el-row>
<el-row :gutter="8">
<el-col :span="8">
<el-form-item label="报价平台网址" prop="bidWebsite">
<el-input v-model="form.bidWebsite" placeholder="请输入报价平台网址" :disabled="this.form.bidApprovalStatus != '0' && this.form.bidApprovalStatus != null" />
</el-form-item>
</el-col>
</el-row>
<el-row :gutter="8">
<el-col :span="12">
<el-col :span="8">
<el-form-item label="招标单位" prop="bidTenderingUnit">
<el-input v-model="form.bidTenderingUnitBm" v-if="false"/>
<el-input v-model="form.bidTenderingUnit" placeholder="请输入招标单位" :disabled="true">
@ -233,7 +264,7 @@
</el-input>
</el-form-item>
</el-col>
<el-col :span="12">
<el-col :span="8">
<el-form-item label="招标代理" prop="bidAgency">
<el-input v-model="form.bidAgency" placeholder="请输入招标代理" :disabled="this.form.bidApprovalStatus != '0' && this.form.bidApprovalStatus != null" />
</el-form-item>
@ -524,6 +555,42 @@
</el-form-item>
</el-col>
</el-row>
<el-divider content-position="left" class="customer_divider_text">投标办附件</el-divider>
<div v-hasPermi="['bid:bid:bidTbbFile']">
<el-upload class="upload-demo"
ref="bidTbbFileUpload"
name="bidFile"
:action="uploadUrl"
:headers="headers"
:data="{ relation_id: this.form.bidId,file_type: 'bidTbbFile' }"
:before-upload="beforeAvatarUploadBidTbbFile"
:on-success="handleAvatarSuccess"
:show-file-list="false"
:limit="1"
v-if="this.form.bidApprovalStatus == '1'">
<el-button size="mini" type="primary" @click="uploadFile('bidTbbFile')">上传文件</el-button>
</el-upload>
</div>
<el-table class="down" v-loading="bidTbbFileLoading" :data="bidTbbFileList" border stripe style="width: 100%;margin-top: 10px;" height="200px">
<el-table-column prop="fileName" label="文件名称" ></el-table-column>
<el-table-column prop="fileSize" label="文件大小" width="150px">
<template slot-scope="scope">
<span v-if="scope.row.fileSize / 1024 / 1024 < 1">{{(scope.row.fileSize / 1024).toFixed(2) + 'KB'}}</span>
<span v-else>{{(scope.row.fileSize / 1024 / 1024).toFixed(2) + 'MB'}}</span>
</template>
</el-table-column>
<el-table-column prop="fileTime" label="上传时间" width="200px"></el-table-column>
<el-table-column width="150px" label="操作">
<template slot-scope="scope">
<el-button :key="Math.random()" size="small" type="text">
<a @click="downloadFile(scope.row.fileUrl)">下载</a>
</el-button>
<el-button :key="Math.random()" size="small" type="text" v-if="form.bidApprovalStatus == '1'">
<a @click="deleteFile(scope.row.fileId,'bidTbbFile')">删除</a>
</el-button>
</template>
</el-table-column>
</el-table>
</div>
</el-form>
@ -534,11 +601,11 @@
<span style="margin-left: 10px" v-hasPermi="['bid:bid:commit']"><el-button type="primary" plain @click="commitForm" v-if="this.form.bidApprovalStatus == '0' || this.form.bidApprovalStatus == null"> </el-button></span>
</div>
</div>
<PeopleSelect v-if="checkRole(['BID'])" ref="peopleSelect" :type="'single'" :isCheck="true" :open="peopleOpenSelectYwy" @cancel="peopleOpenSelectYwy=false" @submit="submitPeopleSelectYwy"></PeopleSelect>
<!-- 客户选择对话框-->
<CustomerSelect ref="customerSelect" :open="customerOpen" @submit="submitCustomer" @cancel="customerOpen=false"></CustomerSelect>
</el-dialog>
<PeopleSelect v-if="checkRole(['BID'])" ref="peopleSelect" :type="'single'" :isCheck="true" :open="peopleOpen" @cancel="peopleOpen=false" @submit="submitPeople"></PeopleSelect>
<PeopleSelect v-if="checkRole(['BID'])" ref="peopleSelect" :type="'single'" :isCheck="true" :open="peopleOpenFp" @cancel="peopleOpenFp=false" @submit="submitPeopleFp"></PeopleSelect>
</div>
</template>
<style>
@ -579,7 +646,7 @@ export default {
'CustomerSelect': CustomerSelect,
'PeopleSelect': PeopleSelect
},
dicts: ['bid_approval_status','bid_online_quotation','bid_copper_price_linkage','bid_open_close','bid_bidding','bid_notification_award'],
dicts: ['bid_has_registration','bid_approval_status','bid_online_quotation','bid_copper_price_linkage','bid_open_close','bid_bidding','bid_notification_award'],
data() {
return {
//
@ -661,7 +728,8 @@ export default {
//
peopleOpen:false,
peopleOpenFp:false, //
peopleOpenSelectYwy:false, //
selectedPeoples:[]
};
},
@ -699,6 +767,9 @@ export default {
bidSalesmanName: null,
bidSalesmanBm: null,
bidSalesmanCode: null,
bidSalesmanDeptId: null,
bidSalesmanDeptName: null,
bidHasRegistration: null,
bidRegistrationNumber: null,
bidOpeningDate: null,
bidOnlineQuotation: null,
@ -788,6 +859,9 @@ export default {
this.form.bidSalesmanName = this.$store.state.user.nickName;
this.form.bidSalesmanBm = this.$store.state.user.sapBm;
this.form.bidSalesmanCode = this.$store.state.user.name;
this.form.bidSalesmanDeptId = this.$store.state.user.deptId;
this.form.bidSalesmanDeptName = this.$store.state.user.deptName;
},
/** 修改按钮操作 */
handleUpdate(row) {
@ -854,10 +928,15 @@ export default {
}, `bid_${new Date().getTime()}.xlsx`)
},
/** 分派按钮 */
handleAssign() {
this.openPeopleSelect();
},
/** 是否报名事件 */
bidHasRegistrationChange(val) {
this.form.bidRegistrationNumber = (val != '0'?'':this.form.bidRegistrationNumber)
},
/*********************************附件列表数据展示、上传*****************************************/
//
@ -865,7 +944,7 @@ export default {
this.activeName = activeName
},
//-
//-
beforeAvatarUploadBidYwyFile(file){
this.bidYwyFileLoading = true;
const maxSize = 100 * 1024 * 1024; // 100MB
@ -875,6 +954,16 @@ export default {
return false;
}
},
//-
beforeAvatarUploadBidTbbFile(file){
this.bidTbbFileLoading = true;
const maxSize = 100 * 1024 * 1024; // 100MB
if (file.size > maxSize) {
this.$modal.msgError("文件大小超过了"+maxSize / (1024 * 1024)+"MB的限制");
this.bidYwyFileLoading = false;
return false;
}
},
//
handleAvatarSuccess(res) {
let activeName = this.activeName;
@ -913,7 +1002,7 @@ export default {
getBidTbbFileList(){
const param = {relationId:this.form.bidId,fileType:'bidTbbFile'}
bidFileList(param).then(response => {
this.bidYwyFileList = response.rows;
this.bidTbbFileList = response.rows;
});
},
@ -941,19 +1030,38 @@ export default {
//-
openPeopleSelect(){
this.peopleOpen=true;
this.peopleOpenFp=true;
},
//- submitPeople(nikeNamelist) submitPeople(peopleList,nikeNamelist)
submitPeople(peopleList,nickNameList){
submitPeopleFp(peopleList,nickNameList){
const receiveUserName = peopleList[0];
const bidIds = this.ids;
const param = {'receiveUserName':receiveUserName,'bidIds':bidIds}
bidAssign(param).then(response => {
this.$modal.msgSuccess("分派成功");
this.peopleOpen=false;
this.peopleOpenFp=false;
})
},
//-
openPeopleSelectYwy(){
this.peopleOpenSelectYwy=true;
},
//-
submitPeopleSelectYwy(peopleList,nickNameList){
this.selectedPeoples = this.selectedPeoples.concat(nickNameList)
this.selectedPeoples = this.unique(this.selectedPeoples)
this.form.bidSalesmanName = this.selectedPeoples[0].nickName;
this.form.bidSalesmanBm = this.selectedPeoples[0].sapUserBm;
this.form.bidSalesmanCode = this.selectedPeoples[0].userName;
this.peopleOpenSelectYwy=false;
},
//
unique(arr) {
const res = new Map();
return arr.filter((arr) => !res.has(arr.userName) && res.set(arr.userName, 1));
},
}
};
</script>

View File

@ -369,12 +369,12 @@
</el-col>
</el-row>
<el-row :gutter="8" v-if="this.form.quotApprovalStatus != '0' && this.form.quotApprovalStatus != null">
<el-col :span="6" v-if="checkRole(['QUOT','PRICE_VERIFICATION'])">
<el-col :span="6" v-if="checkRole(['QUOT','PRICE_VERIFICATION','HTB_QUOT'])">
<el-form-item label="明细条数" prop="quotMaterialsCount">
<el-input v-model="form.quotMaterialsCount" :disabled="form.quotApprovalStatus == '2' || form.quotApprovalStatus == '3'"/>
</el-form-item>
</el-col>
<el-col :span="6" v-if="checkRole(['QUOT','PRICE_VERIFICATION'])">
<el-col :span="6" v-if="checkRole(['QUOT','PRICE_VERIFICATION','HTB_QUOT'])">
<el-form-item label="总价" prop="quotTotalPrice">
<el-input v-model="form.quotTotalPrice" :disabled="form.quotApprovalStatus == '2' || form.quotApprovalStatus == '3'"/>
</el-form-item>
@ -398,35 +398,35 @@
</el-col>
</el-row>
<el-row :gutter="8">
<el-col :span="6" v-if="checkRole(['QUOT','PRICE_VERIFICATION'])">
<el-col :span="6" v-if="checkRole(['QUOT','PRICE_VERIFICATION','HTB_QUOT'])">
<el-form-item label="总数量" prop="quotQuantity">
<el-input v-model="form.quotQuantity" :disabled="true"/>
</el-form-item>
</el-col>
<el-col :span="6" v-if="checkRole(['QUOT','PRICE_VERIFICATION'])">
<el-col :span="6" v-if="checkRole(['QUOT','PRICE_VERIFICATION','HTB_QUOT'])">
<el-form-item label="铜价" prop="quotTongPrice">
<el-input v-model="form.quotTongPrice" :disabled="true"/>
</el-form-item>
</el-col>
<el-col :span="6" v-if="checkRole(['QUOT','PRICE_VERIFICATION'])">
<el-col :span="6" v-if="checkRole(['QUOT','PRICE_VERIFICATION','HTB_QUOT'])">
<el-form-item label="铝价" prop="quotLvPrice">
<el-input v-model="form.quotLvPrice" :disabled="true"/>
</el-form-item>
</el-col>
<el-col :span="6" v-if="checkRole(['QUOT','PRICE_VERIFICATION','QUOT_MAT_PRICE_DIFF'])">
<el-col :span="6" v-if="checkRole(['QUOT','PRICE_VERIFICATION','QUOT_MAT_PRICE_DIFF','HTB_QUOT'])">
<el-form-item label="整单料价价差率" prop="quotMatpriceDiff">
<el-input v-model="form.quotMatpriceDiff" :disabled="true"/>
</el-form-item>
</el-col>
</el-row>
<el-row :gutter="8">
<el-col :span="6" v-if="checkRole(['QUOT','PRICE_VERIFICATION','QUOT_MAT_PRICE_DIFF'])">
<el-col :span="6" v-if="checkRole(['QUOT','PRICE_VERIFICATION','QUOT_MAT_PRICE_DIFF','HTB_QUOT'])">
<el-form-item label="整单料价价差率2" prop="quotMatpriceDiff2">
<el-input v-model="form.quotMatpriceDiff2"/>
</el-form-item>
</el-col>
</el-row>
<el-row :gutter="8" v-if="checkRole(['QUOT','PRICE_VERIFICATION','SALES_MAN'])">
<el-row :gutter="8" v-if="checkRole(['QUOT','PRICE_VERIFICATION','SALES_MAN','HTB_QUOT'])">
<el-col :span="14" v-if="this.form.quotApprovalStatus != '0' && this.form.quotApprovalStatus != null">
<el-form-item label="反馈说明" prop="quotFeedbackExplanation">
<el-input type="textarea" autosize v-model="form.quotFeedbackExplanation" placeholder="报价组填写" :disabled="this.form.quotApprovalStatus == 2"/>
@ -572,32 +572,32 @@
<el-input v-model="scope.row.matMatprice" :disabled="true"/>
</template>
</el-table-column>
<el-table-column label="红本单价" prop="matPrice" v-if="checkRole(['QUOT','PRICE_VERIFICATION','SALES_MAN','QUOT_MAT_PRICE_DIFF'])" width="130">
<el-table-column label="红本单价" prop="matPrice" v-if="checkRole(['QUOT','PRICE_VERIFICATION','SALES_MAN','QUOT_MAT_PRICE_DIFF','HTB_QUOT'])" width="130">
<template slot-scope="scope">
<el-input v-model="scope.row.matPrice" :disabled="true"/>
</template>
</el-table-column>
<el-table-column label="一次折扣" prop="matPerc" v-if="checkRole(['QUOT','PRICE_VERIFICATION','SALES_MAN','QUOT_MAT_PRICE_DIFF'])" width="130">
<el-table-column label="一次折扣" prop="matPerc" v-if="checkRole(['QUOT','PRICE_VERIFICATION','SALES_MAN','QUOT_MAT_PRICE_DIFF','HTB_QUOT'])" width="130">
<template slot-scope="scope">
<el-input v-model="scope.row.matPerc" :disabled="true"/>
</template>
</el-table-column>
<el-table-column label="二次折扣" prop="matPerc2" v-if="checkRole(['QUOT','PRICE_VERIFICATION','SALES_MAN','QUOT_MAT_PRICE_DIFF'])" width="130">
<el-table-column label="二次折扣" prop="matPerc2" v-if="checkRole(['QUOT','PRICE_VERIFICATION','SALES_MAN','QUOT_MAT_PRICE_DIFF','HTB_QUOT'])" width="130">
<template slot-scope="scope">
<el-input v-model="scope.row.matPerc2" :disabled="true"/>
</template>
</el-table-column>
<el-table-column label="特批下点" prop="matQuotTp" v-if="checkRole(['QUOT','PRICE_VERIFICATION','QUOT_MAT_PRICE_DIFF'])" width="120">
<el-table-column label="特批下点" prop="matQuotTp" v-if="checkRole(['QUOT','PRICE_VERIFICATION','QUOT_MAT_PRICE_DIFF','HTB_QUOT'])" width="120">
<template slot-scope="scope">
<el-input v-model="scope.row.matQuotTp" :disabled="true"/>
</template>
</el-table-column>
<el-table-column label="报价单价" prop="matQuotPrice" v-if="checkRole(['QUOT','PRICE_VERIFICATION','SALES_MAN','QUOT_MAT_PRICE_DIFF'])" width="130">
<el-table-column label="报价单价" prop="matQuotPrice" v-if="checkRole(['QUOT','PRICE_VERIFICATION','SALES_MAN','QUOT_MAT_PRICE_DIFF','HTB_QUOT'])" width="130">
<template slot-scope="scope">
<el-input v-model="scope.row.matQuotPrice" :disabled="true"/>
</template>
</el-table-column>
<el-table-column label="报价小计" prop="matQuotAllPrice" v-if="checkRole(['QUOT','PRICE_VERIFICATION','SALES_MAN','QUOT_MAT_PRICE_DIFF'])" width="130">
<el-table-column label="报价小计" prop="matQuotAllPrice" v-if="checkRole(['QUOT','PRICE_VERIFICATION','SALES_MAN','QUOT_MAT_PRICE_DIFF','HTB_QUOT'])" width="130">
<template slot-scope="scope">
<el-input v-model="scope.row.matQuotAllPrice" :disabled="true"/>
</template>

View File

@ -100,8 +100,8 @@
</div>
<!-- 添加或修改部门对话框 -->
<el-dialog :title="title" :visible.sync="open" width="600px" append-to-body>
<el-form ref="form" :model="form" :rules="rules" label-width="80px">
<el-dialog :title="title" :visible.sync="open" width="800px" append-to-body>
<el-form ref="form" :model="form" :rules="rules" label-width="120px">
<el-row>
<el-col :span="24" v-if="form.parentId !== 0">
<el-form-item label="上级部门" prop="parentId">
@ -145,6 +145,19 @@
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="8">
<el-form-item label="直营店、事业部" prop="zydSyb">
<el-select v-model="form.zydSyb" clearable>
<el-option
v-for="dict in dict.type.sys_zyd_syb"
:key="dict.value"
:label="dict.label"
:value="dict.value"/>
</el-select>
</el-form-item>
</el-col>
</el-row>
</el-form>
<div slot="footer" class="dialog-footer">
<el-button type="primary" @click="submitForm"> </el-button>
@ -161,7 +174,7 @@ import "@riophae/vue-treeselect/dist/vue-treeselect.css";
export default {
name: "Dept",
dicts: ['sys_normal_disable'],
dicts: ['sys_normal_disable','sys_zyd_syb'],
components: { Treeselect },
data() {
return {