This commit is contained in:
xd 2024-07-14 17:21:26 +08:00
parent 34f226fd76
commit 4e9d72f353
5 changed files with 127 additions and 82 deletions

View File

@ -14,6 +14,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 org.springframework.security.access.prepost.PreAuthorize;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
@ -43,6 +44,27 @@ public class BidController extends BaseController
@Autowired
private IBidFileService bidFileService;
/**
* 分派
*/
@PreAuthorize("@ss.hasPermi('bid:bid:assign')")
@Log(title = "分派投标信息", businessType = BusinessType.EXPORT)
@PostMapping("/bidAssign")
public AjaxResult bidAssign(@RequestBody Bid bid)
{
String[] bidIds = bid.getBidIds();
String receiveUserName = bid.getReceiveUserName();
for(String bidId:bidIds){
Bid entity = bidService.selectBidByBidId(bidId);
if(StringUtils.isNotEmpty(entity.getReceiveUserName())){
return error("投标信息:"+entity.getBidCode()+" 已分派");
}
entity.setReceiveUserName(receiveUserName);
bidService.updateBid(entity);
}
return success();
}
/**
* 查询投标信息列表
*/
@ -51,6 +73,20 @@ public class BidController extends BaseController
public TableDataInfo list(Bid bid)
{
startPage();
// 获取用户角色 --判断是否是投标小组经理角色
Boolean tbbRoleFlag = false;
List<SysRole> roles = SecurityUtils.getLoginUser().getUser().getRoles();
for(SysRole sysRole:roles){
String roleKey = sysRole.getRoleKey();
if("BID".equals(roleKey)){
tbbRoleFlag = true;
break;
}
}
if(!tbbRoleFlag){
bid.setReceiveUserName(getUsername());
}
List<Bid> list = bidService.selectBidList(bid);
return getDataTable(list);
}
@ -188,7 +224,7 @@ public class BidController extends BaseController
public AjaxResult commitTbxx(@RequestBody Bid bid)
{
try{
// 获取用户角色 --判断是否是核价组角色
// 获取用户角色 --判断是否是投标小组经理角色
Boolean tbbRoleFlag = false;
List<SysRole> roles = SecurityUtils.getLoginUser().getUser().getRoles();
for(SysRole sysRole:roles){

View File

@ -17,6 +17,7 @@ public class Bid extends BaseEntity
/** */
private String bidId;
private String[] bidIds;
/** 标书编号 */
@Excel(name = "标书编号")
@ -180,6 +181,9 @@ public class Bid extends BaseEntity
/** 创建人 */
private String createName;
/** 分派接收人 */
private String receiveUserName;
public void setBidId(String bidId)
{
this.bidId = bidId;
@ -189,6 +193,9 @@ public class Bid extends BaseEntity
{
return bidId;
}
public String[] getBidIds() { return bidIds; }
public void setBidIds(String[] bidIds) { this.bidIds = bidIds; }
public void setBidCode(String bidCode)
{
this.bidCode = bidCode;
@ -243,10 +250,7 @@ public class Bid extends BaseEntity
public String getBidTenderingUnitBm() { return bidTenderingUnitBm; }
public void setBidTenderingUnitBm(String bidTenderingUnitBm) { this.bidTenderingUnitBm = bidTenderingUnitBm; }
public void setBidTenderingUnit(String bidTenderingUnit)
{
this.bidTenderingUnit = bidTenderingUnit;
}
public void setBidTenderingUnit(String bidTenderingUnit) { this.bidTenderingUnit = bidTenderingUnit; }
public String getBidTenderingUnit()
{
@ -270,10 +274,7 @@ public class Bid extends BaseEntity
{
return bidProject;
}
public void setBidAuthorizedRepresentative(String bidAuthorizedRepresentative)
{
this.bidAuthorizedRepresentative = bidAuthorizedRepresentative;
}
public void setBidAuthorizedRepresentative(String bidAuthorizedRepresentative) { this.bidAuthorizedRepresentative = bidAuthorizedRepresentative; }
public String getBidAuthorizedRepresentative()
{
@ -288,10 +289,7 @@ public class Bid extends BaseEntity
{
return bidAuthorizedPhone;
}
public void setBidFilePaymentMethod(String bidFilePaymentMethod)
{
this.bidFilePaymentMethod = bidFilePaymentMethod;
}
public void setBidFilePaymentMethod(String bidFilePaymentMethod) { this.bidFilePaymentMethod = bidFilePaymentMethod; }
public String getBidFilePaymentMethod()
{
@ -306,19 +304,13 @@ public class Bid extends BaseEntity
{
return bidPaymentDeviation;
}
public void setBidCopperPriceLinkage(String bidCopperPriceLinkage)
{
this.bidCopperPriceLinkage = bidCopperPriceLinkage;
}
public void setBidCopperPriceLinkage(String bidCopperPriceLinkage) { this.bidCopperPriceLinkage = bidCopperPriceLinkage; }
public String getBidCopperPriceLinkage()
{
return bidCopperPriceLinkage;
}
public void setBidPriceLinkageMethod(String bidPriceLinkageMethod)
{
this.bidPriceLinkageMethod = bidPriceLinkageMethod;
}
public void setBidPriceLinkageMethod(String bidPriceLinkageMethod) { this.bidPriceLinkageMethod = bidPriceLinkageMethod; }
public String getBidPriceLinkageMethod()
{
@ -333,28 +325,19 @@ public class Bid extends BaseEntity
{
return bidOtherRequire;
}
public void setBidWinningAmount(String bidWinningAmount)
{
this.bidWinningAmount = bidWinningAmount;
}
public void setBidWinningAmount(String bidWinningAmount) { this.bidWinningAmount = bidWinningAmount; }
public String getBidWinningAmount()
{
return bidWinningAmount;
}
public void setBidCopperCableAmount(String bidCopperCableAmount)
{
this.bidCopperCableAmount = bidCopperCableAmount;
}
public void setBidCopperCableAmount(String bidCopperCableAmount) { this.bidCopperCableAmount = bidCopperCableAmount; }
public String getBidCopperCableAmount()
{
return bidCopperCableAmount;
}
public void setBidAluminumCableAmount(String bidAluminumCableAmount)
{
this.bidAluminumCableAmount = bidAluminumCableAmount;
}
public void setBidAluminumCableAmount(String bidAluminumCableAmount) { this.bidAluminumCableAmount = bidAluminumCableAmount; }
public String getBidAluminumCableAmount()
{
@ -369,15 +352,9 @@ public class Bid extends BaseEntity
{
return bidOpenClose;
}
public void setBidPriceAdjustmentNotice(String bidPriceAdjustmentNotice)
{
this.bidPriceAdjustmentNotice = bidPriceAdjustmentNotice;
}
public void setBidPriceAdjustmentNotice(String bidPriceAdjustmentNotice) { this.bidPriceAdjustmentNotice = bidPriceAdjustmentNotice; }
public String getBidPriceAdjustmentNotice()
{
return bidPriceAdjustmentNotice;
}
public String getBidPriceAdjustmentNotice() { return bidPriceAdjustmentNotice; }
public void setBidValidityPeriod(String bidValidityPeriod)
{
this.bidValidityPeriod = bidValidityPeriod;
@ -432,10 +409,7 @@ public class Bid extends BaseEntity
{
return bidPrice;
}
public void setBidBusinessSettlement(String bidBusinessSettlement)
{
this.bidBusinessSettlement = bidBusinessSettlement;
}
public void setBidBusinessSettlement(String bidBusinessSettlement) { this.bidBusinessSettlement = bidBusinessSettlement; }
public String getBidBusinessSettlement()
{
@ -450,10 +424,7 @@ public class Bid extends BaseEntity
{
return bidBond;
}
public void setBidWinningServiceFee(String bidWinningServiceFee)
{
this.bidWinningServiceFee = bidWinningServiceFee;
}
public void setBidWinningServiceFee(String bidWinningServiceFee) { this.bidWinningServiceFee = bidWinningServiceFee; }
public String getBidWinningServiceFee()
{
@ -522,10 +493,7 @@ public class Bid extends BaseEntity
{
return bidPriceLinkage;
}
public void setBidPaymentMethod(String bidPaymentMethod)
{
this.bidPaymentMethod = bidPaymentMethod;
}
public void setBidPaymentMethod(String bidPaymentMethod) { this.bidPaymentMethod = bidPaymentMethod; }
public String getBidPaymentMethod()
{
@ -536,28 +504,19 @@ public class Bid extends BaseEntity
this.bidOtherMatters = bidOtherMatters;
}
public String getBidOtherMatters()
{
return bidOtherMatters;
}
public String getBidOtherMatters() { return bidOtherMatters; }
public void setBidZbr(String bidZbr)
{
this.bidZbr = bidZbr;
}
public String getBidZbr()
{
return bidZbr;
}
public String getBidZbr() { return bidZbr; }
public void setBidJdr(String bidJdr)
{
this.bidJdr = bidJdr;
}
public String getBidJdr()
{
return bidJdr;
}
public String getBidJdr() { return bidJdr; }
public void setBidShr(String bidShr)
{
this.bidShr = bidShr;
@ -576,16 +535,12 @@ public class Bid extends BaseEntity
{
return bidApprovalStatus;
}
public void setBidNotificationAward(String bidNotificationAward)
{
this.bidNotificationAward = bidNotificationAward;
}
public void setBidNotificationAward(String bidNotificationAward) { this.bidNotificationAward = bidNotificationAward; }
public String getBidNotificationAward()
{
return bidNotificationAward;
}
public String getBidRemark() {
return bidRemark;
}
@ -593,7 +548,6 @@ public class Bid extends BaseEntity
public void setBidRemark(String bidRemark) {
this.bidRemark = bidRemark;
}
public String getBidReturnRemark() {
return bidReturnRemark;
}
@ -601,12 +555,10 @@ public class Bid extends BaseEntity
public void setBidReturnRemark(String bidReturnRemark) {
this.bidReturnRemark = bidReturnRemark;
}
public String getCreateName() { return createName; }
public String getCreateName() {
return createName;
}
public void setCreateName(String createName) { this.createName = createName; }
public String getReceiveUserName() { return receiveUserName; }
public void setCreateName(String createName) {
this.createName = createName;
}
public void setReceiveUserName(String receiveUserName) { this.receiveUserName = receiveUserName; }
}

View File

@ -55,6 +55,7 @@
<result property="bidNotificationAward" column="bid_notification_award" />
<result property="bidRemark" column="bid_remark" />
<result property="bidReturnRemark" column="bid_returnRemark" />
<result property="receiveUserName" column="receive_user_name" />
<result property="createBy" column="create_by" />
<result property="createName" column="create_name" />
@ -82,7 +83,7 @@
a.bid_warranty_period, a.bid_bidding, a.bid_evaluation_method, a.bid_technical_require,
a.bid_price_linkage, a.bid_payment_method, a.bid_other_matters, a.bid_zbr, a.bid_jdr,
a.bid_shr, a.bid_approval_status, a.bid_notification_award, a.bid_remark,a.bid_returnRemark,
a.create_by,u.nick_name create_name, a.create_time,
a.receive_user_name,a.create_by,u.nick_name create_name, a.create_time,
a.update_by, a.update_time
from bid a
<include refid="quotJoins"/>
@ -97,6 +98,8 @@
<if test="bidProject != null and bidProject != ''"> and bid_project like concat('%', #{bidProject}, '%')</if>
<if test="bidAuthorizedRepresentative != null and bidAuthorizedRepresentative != ''"> and bid_authorized_representative like concat('%', #{bidAuthorizedRepresentative}, '%')</if>
<if test="bidApprovalStatus != null and bidApprovalStatus != ''"> and bid_approval_status = #{bidApprovalStatus}</if>
<if test="receiveUserName != null and receiveUserName != ''"> and receive_user_name = #{receiveUserName}</if>
<!-- 数据范围过滤 -->
${params.dataScope}
</where>
@ -160,6 +163,7 @@
<if test="bidNotificationAward != null and bidNotificationAward != ''">bid_notification_award,</if>
<if test="bidRemark != null and bidRemark != ''">bid_remark,</if>
<if test="bidReturnRemark != null and bidReturnRemark != ''">bid_returnRemark,</if>
<if test="receiveUserName != null and receiveUserName != ''">receive_user_name,</if>
<if test="createBy != null">create_by,</if>
<if test="createTime != null">create_time,</if>
@ -217,6 +221,7 @@
<if test="bidNotificationAward != null and bidNotificationAward != ''">#{bidNotificationAward},</if>
<if test="bidRemark != null and bidRemark != ''">#{bidRemark},</if>
<if test="bidReturnRemark != null and bidReturnRemark != ''">#{bidReturnRemark},</if>
<if test="receiveUserName != null and receiveUserName != ''">#{receiveUserName},</if>
<if test="createBy != null">#{createBy},</if>
<if test="createTime != null">#{createTime},</if>
@ -277,6 +282,7 @@
<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="createBy != null">create_by = #{createBy},</if>
<if test="createTime != null">create_time = #{createTime},</if>

View File

@ -1,5 +1,13 @@
import request from '@/utils/request'
// 分派
export function bidAssign(query) {
return request({
url: '/bid/bid/bidAssign',
method: 'post',
data: query
})
}
// 查询投标信息列表
export function listBid(query) {
return request({

View File

@ -103,6 +103,17 @@
v-hasPermi="['bid:bid:export']"
>导出</el-button>
</el-col>
<el-col :span="1.5">
<el-button
type="warning"
plain
icon="el-icon-user-solid"
size="mini"
:disabled="multiple"
@click="handleAssign"
v-hasPermi="['bid:bid:assign']"
>分派</el-button>
</el-col>
<right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar>
</el-row>
<div v-tableHeight="{customHeight: 76}">
@ -331,7 +342,6 @@
</el-table-column>
</el-table>
<div v-if="checkRole(['BID']) ">
<el-divider content-position="left" class="customer_divider_text">投标信息</el-divider>
<el-row :gutter="8">
@ -528,6 +538,7 @@
<!-- 客户选择对话框-->
<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>
</div>
</template>
<style>
@ -550,11 +561,13 @@
<script>
import { checkPermi,checkRole } from '@/utils/permission';//
import { getToken } from "@/utils/auth";
import { listBid, getBid, delBid, addBid, updateBid, bidFileList,bidFileDelete, commitTbxx } from "@/api/bid/bid";
import { bidAssign,listBid, getBid, delBid, addBid, updateBid, bidFileList,bidFileDelete, commitTbxx } from "@/api/bid/bid";
/** 弹窗放大、拖拽 */
import elDragDialog from "@/directive/dialog/dragDialog";
/** 导入客户选择组件 */
import CustomerSelect from "@/views/components/Tools/CustomerSelect/index.vue";
/** 导入选人组件 */
import PeopleSelect from "@/views/components/Tools/PeopleSelect/index.vue";
export default {
name: "Bid",
@ -563,7 +576,8 @@ export default {
},
components: {
//
'CustomerSelect': CustomerSelect
'CustomerSelect': CustomerSelect,
'PeopleSelect': PeopleSelect
},
dicts: ['bid_approval_status','bid_online_quotation','bid_copper_price_linkage','bid_open_close','bid_bidding','bid_notification_award'],
data() {
@ -643,7 +657,12 @@ export default {
bidPaymentDeviation: [
{ required: true, message: "投标付款偏差不能为空", trigger: "blur" }
],
}
},
//
peopleOpen:false,
selectedPeoples:[]
};
},
created() {
@ -778,6 +797,10 @@ export default {
this.form = response.data;
this.open = true;
this.title = "投标信息";
//-
this.getBidYwyFileList();
this.getBidTbbFileList();
});
},
/** 保存按钮 */
@ -831,6 +854,10 @@ export default {
}, `bid_${new Date().getTime()}.xlsx`)
},
handleAssign() {
this.openPeopleSelect();
},
/*********************************附件列表数据展示、上传*****************************************/
//
@ -911,6 +938,22 @@ export default {
}
},
/*********************************附件列表数据展示、上传*****************************************/
//-
openPeopleSelect(){
this.peopleOpen=true;
},
//- submitPeople(nikeNamelist) submitPeople(peopleList,nikeNamelist)
submitPeople(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;
})
},
}
};
</script>