投标分派功能优化

This commit is contained in:
xd 2024-07-16 10:16:26 +08:00
parent 90ae4b8a6d
commit c4171c9eb9
5 changed files with 64 additions and 45 deletions

View File

@ -1,5 +1,5 @@
#for tests only !
#Mon Jul 15 16:53:18 CST 2024
#Tue Jul 16 09:48:52 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=654321
jco.client.passwd=fIIvwvEBHbcBvFB_tS(Vu[3tV[6as:m0)kkAT/TIkq(z)5~9
jco.client.client=800

View File

@ -1,5 +1,6 @@
package com.ruoyi.web.controller.bid;
import java.util.List;
import javax.security.auth.Subject;
import javax.servlet.http.HttpServletResponse;
import com.ruoyi.bid.domain.BidFile;
import com.ruoyi.bid.domain.SysOaBid;
@ -55,12 +56,15 @@ public class BidController extends BaseController
{
String[] bidIds = bid.getBidIds();
String receiveUserName = bid.getReceiveUserName();
String receiveUserNickName = bid.getReceiveUserNickName();
for(String bidId:bidIds){
Bid entity = bidService.selectBidByBidId(bidId);
/* if(StringUtils.isNotEmpty(entity.getReceiveUserName())){
return error("投标信息:"+entity.getBidCode()+" 已分派");
}*/
if(!"1".equals(entity.getBidApprovalStatus())){
return error("投标信息:"+entity.getBidCode()+" 当前状态不是协助中");
}
entity.setSetReceiveUser("0");//更新 是否已分派 为已分派
entity.setReceiveUserName(receiveUserName);
entity.setReceiveUserNickName(receiveUserNickName);
bidService.updateBid(entity);
}
return success();
@ -76,16 +80,10 @@ public class BidController extends BaseController
startPage();
// 获取用户角色 --判断是否是投标小组-标书制作员角色
Boolean bidBszzYRoleFlag = false;
List<SysRole> roles = SecurityUtils.getLoginUser().getUser().getRoles();
for(SysRole sysRole:roles){
String roleKey = sysRole.getRoleKey();
if("BID_BSZZY".equals(roleKey)){
bidBszzYRoleFlag = true;
break;
}
}
if(bidBszzYRoleFlag){
Boolean bidBszzYRoleFlag = SecurityUtils.hasRole("BID_BSZZY");
Boolean adminRoleFlag = SecurityUtils.hasRole("admin");
if(bidBszzYRoleFlag&&!adminRoleFlag){
bid.setSetReceiveUser("0");
bid.setReceiveUserName(getUsername());
}
List<Bid> list = bidService.selectBidList(bid);
@ -220,24 +218,11 @@ public class BidController extends BaseController
* 提交OA事业部经理店长/投标办按钮
*/
@PreAuthorize("@ss.hasPermi('bid:bid:commit')")
@Log(title = "提交OA事业部经理、店长/投标办按钮", businessType = BusinessType.OTHER)
@Log(title = "提交投标办", businessType = BusinessType.OTHER)
@PostMapping("/commitTbxx")
public AjaxResult commitTbxx(@RequestBody Bid bid)
{
try{
// 获取用户角色 --判断是否是投标小组经理角色
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;
}
}
String bid_id = bid.getBidId();
bid.setUpdateBy(getUsername());
// TODO 如果是事业部直营店 则提交OA审核 如果是业务员则提交投标办审批(1-直营店2-事业部)
Long deptId = getLoginUser().getUser().getDeptId();
SysDept sysDept = deptService.selectDeptById(deptId);
@ -289,7 +274,7 @@ public class BidController extends BaseController
}
}
sysOaBid.setBidYwyFile(fileString);
sysOaBid.setBidYwyFile(fileString);// 上传附件
sysOaBid.setCreateTime(DateUtils.getNowDate());
sysOaBid.setIsFinish("0");// 投标信息已提交OA审批中
bidService.insertSysOABid(sysOaBid);
@ -299,12 +284,16 @@ public class BidController extends BaseController
bid.setBidApprovalStatus("1");
}
// 获取用户角色 --判断是否是投标小组经理角色
Boolean bidJlRoleFlag = SecurityUtils.hasRole("BID");
String bid_id = bid.getBidId();
if(StringUtils.isEmpty(bid_id)){
bid.setBidId(UUID.fastUUID().toString());
String bidCode = bidService.getCode("TBXX");
bid.setBidCode(bidCode);
if(tbbRoleFlag){
if(bidJlRoleFlag){
bid.setCreateBy(bid.getBidSalesmanCode());
}else{
bid.setCreateBy(getUsername());
@ -312,7 +301,7 @@ public class BidController extends BaseController
bidService.insertBid(bid);
return success();
}else{
if(tbbRoleFlag){
if(bidJlRoleFlag){
bid.setUpdateBy(bid.getBidSalesmanCode());
}else{
bid.setUpdateBy(getUsername());

View File

@ -53,6 +53,7 @@ public class Bid extends BaseEntity
private String bidOpeningDate;
/** 是否网上报价0-是/1-否) */
@Excel(name = "是否网上报价",dictType = "bid_online_quotation")
private String bidOnlineQuotation;
/** 报价平台网址 */
@ -177,7 +178,7 @@ public class Bid extends BaseEntity
private String bidShr;
/** 提交状态 */
@Excel(name = "提交状态")
@Excel(name = "提交状态",dictType = "bid_approval_status")
private String bidApprovalStatus;
/** 有无中标通知书0-是/1-否) */
@ -192,8 +193,12 @@ public class Bid extends BaseEntity
/** 创建人 */
private String createName;
/** 分派情况 0-已分派/1-未分派 */
private String setReceiveUser;
/** 分派接收人 */
private String receiveUserName;
private String receiveUserNickName;
public void setBidId(String bidId)
{
@ -578,7 +583,13 @@ public class Bid extends BaseEntity
public String getCreateName() { return createName; }
public void setCreateName(String createName) { this.createName = createName; }
public String getSetReceiveUser() { return setReceiveUser; }
public void setSetReceiveUser(String setReceiveUser) { this.setReceiveUser = setReceiveUser; }
public String getReceiveUserName() { return receiveUserName; }
public void setReceiveUserName(String receiveUserName) { this.receiveUserName = receiveUserName; }
public String getReceiveUserNickName() { return receiveUserNickName; }
public void setReceiveUserNickName(String receiveUserNickName) { this.receiveUserNickName = receiveUserNickName; }
}

View File

@ -58,7 +58,10 @@
<result property="bidNotificationAward" column="bid_notification_award" />
<result property="bidRemark" column="bid_remark" />
<result property="bidReturnRemark" column="bid_returnRemark" />
<result property="setReceiveUser" column="set_receive_user" />
<result property="receiveUserName" column="receive_user_name" />
<result property="receiveUserNickName" column="receive_user_nick_name" />
<result property="createBy" column="create_by" />
<result property="createName" column="create_name" />
@ -86,7 +89,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.receive_user_name,a.create_by,u.nick_name create_name, a.create_time,
a.set_receive_user,a.receive_user_name,a.receive_user_nick_name,a.create_by,u.nick_name create_name, a.create_time,
a.update_by, a.update_time
from bid a
<include refid="quotJoins"/>
@ -102,10 +105,12 @@
<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="setReceiveUser != null and setReceiveUser != ''"> and set_receive_user = #{setReceiveUser}</if>
<if test="receiveUserName != null and receiveUserName != ''"> and receive_user_name = #{receiveUserName}</if>
<!-- 数据范围过滤 -->
${params.dataScope}
</where>
order by a.bidCode desc
</select>
<select id="selectBidByBidId" parameterType="String" resultMap="BidResult">
@ -169,7 +174,9 @@
<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="setReceiveUser != null and setReceiveUser != ''">set_receive_user,</if>
<if test="receiveUserName != null and receiveUserName != ''">receive_user_name,</if>
<if test="receiveUserNickName != null and receiveUserNickName != ''">receive_user_nick_name,</if>
<if test="createBy != null">create_by,</if>
<if test="createTime != null">create_time,</if>
@ -230,7 +237,9 @@
<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="setReceiveUser != null and setReceiveUser != ''">#{setReceiveUser},</if>
<if test="receiveUserName != null and receiveUserName != ''">#{receiveUserName},</if>
<if test="receiveUserNickName != null and receiveUserNickName != ''">#{receiveUserNickName},</if>
<if test="createBy != null">#{createBy},</if>
<if test="createTime != null">#{createTime},</if>
@ -352,7 +361,9 @@
<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="setReceiveUser != null and setReceiveUser != ''">set_receive_user = #{setReceiveUser},</if>
<if test="receiveUserName != null">receive_user_name = #{receiveUserName},</if>
<if test="receiveUserNickName != null and receiveUserNickName != ''">receive_user_nick_name = #{receiveUserNickName},</if>
<if test="createBy != null">create_by = #{createBy},</if>
<if test="createTime != null">create_time = #{createTime},</if>

View File

@ -54,6 +54,16 @@
/>
</el-select>
</el-form-item>
<el-form-item label="分派情况" prop="bidApprovalStatus">
<el-select v-model="queryParams.setReceiveUser" placeholder="请选择分派情况" clearable>
<el-option
v-for="dict in dict.type.bid_set_receive_user"
:key="dict.value"
:label="dict.label"
:value="dict.value"
/>
</el-select>
</el-form-item>
<el-form-item>
<el-button type="primary" icon="el-icon-search" size="mini" @click="handleQuery">搜索</el-button>
<el-button icon="el-icon-refresh" size="mini" @click="resetQuery">重置</el-button>
@ -130,14 +140,12 @@
<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'])">
<el-table-column label="分派情况" align="center" prop="setReceiveUser" width="120px" v-if="checkRole(['BID'])">
<template slot-scope="scope">
<span v-if="scope.row.receiveUserName">已分派{{scope.row.receiveUserName}}</span>
<span v-else>
未分派
</span>
<span v-if="scope.row.setReceiveUser=='0'">已分派</span>
</template>
</el-table-column>
<el-table-column label="处理人" align="center" prop="receiveUserNickName" width="120px" v-if="checkRole(['BID'])"/>
<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">
@ -217,8 +225,7 @@
<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="openPeopleSelectYwy" size="mini" v-if="checkRole(['BID'])"></el-button>
<el-button v-hasPermi="['system:user:list']" type="primary" icon="el-icon-search" style="margin-left: 10px" @click="openPeopleSelectYwy" size="mini"></el-button>
</el-form-item>
</el-col>
<el-col :span="8" v-if="false">
@ -646,7 +653,7 @@ export default {
'CustomerSelect': CustomerSelect,
'PeopleSelect': PeopleSelect
},
dicts: ['bid_has_registration','bid_approval_status','bid_online_quotation','bid_copper_price_linkage','bid_open_close','bid_bidding','bid_notification_award'],
dicts: ['bid_set_receive_user','bid_has_registration','bid_approval_status','bid_online_quotation','bid_copper_price_linkage','bid_open_close','bid_bidding','bid_notification_award'],
data() {
return {
//
@ -1037,13 +1044,14 @@ export default {
},
//- submitPeople(nikeNamelist) submitPeople(peopleList,nikeNamelist)
submitPeopleFp(peopleList,nickNameList){
const receiveUserName = peopleList[0];
const receiveUserName = nickNameList[0].userName;
const receiveUserNickName = nickNameList[0].nickName;
const bidIds = this.ids;
const param = {'receiveUserName':receiveUserName,'bidIds':bidIds}
const param = {'receiveUserName':receiveUserName,'receiveUserNickName':receiveUserNickName,'bidIds':bidIds}
bidAssign(param).then(response => {
this.$modal.msgSuccess("分派成功");
this.peopleOpenFp=false;
this.getList();
})
},