This commit is contained in:
xd 2024-08-15 14:36:15 +08:00
parent 1fb80891e0
commit be0cd1bf99
30 changed files with 129 additions and 107 deletions

View File

@ -2,10 +2,28 @@
<project version="4">
<component name="ChangeListManager">
<list default="true" id="1ea72584-8a6e-4fb7-9928-17671c0b6e92" name="Default Changelist" comment="">
<change beforePath="$PROJECT_DIR$/ABAP_AS_WITH_POOL.jcoDestination" beforeDir="false" />
<change beforePath="$PROJECT_DIR$/ruoyi-quartz/src/main/resources/mapper/quartz/OABidMapper.xml" beforeDir="false" afterPath="$PROJECT_DIR$/ruoyi-quartz/src/main/resources/mapper/quartz/OABidMapper.xml" afterDir="false" />
<change beforePath="$PROJECT_DIR$/ruoyi-system/src/main/java/com/ruoyi/bid/domain/Bid.java" beforeDir="false" afterPath="$PROJECT_DIR$/ruoyi-system/src/main/java/com/ruoyi/bid/domain/Bid.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/ruoyi-admin/src/main/java/com/ruoyi/web/controller/bid/BidController.java" beforeDir="false" afterPath="$PROJECT_DIR$/ruoyi-admin/src/main/java/com/ruoyi/web/controller/bid/BidController.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/ruoyi-admin/target/classes/com/ruoyi/web/controller/bid/BidController.class" beforeDir="false" afterPath="$PROJECT_DIR$/ruoyi-admin/target/classes/com/ruoyi/web/controller/bid/BidController.class" afterDir="false" />
<change beforePath="$PROJECT_DIR$/ruoyi-admin/target/maven-archiver/pom.properties" beforeDir="false" afterPath="$PROJECT_DIR$/ruoyi-admin/target/maven-archiver/pom.properties" afterDir="false" />
<change beforePath="$PROJECT_DIR$/ruoyi-admin/target/ruoyi-admin.jar" beforeDir="false" afterPath="$PROJECT_DIR$/ruoyi-admin/target/ruoyi-admin.jar" afterDir="false" />
<change beforePath="$PROJECT_DIR$/ruoyi-admin/target/ruoyi-admin.jar.original" beforeDir="false" afterPath="$PROJECT_DIR$/ruoyi-admin/target/ruoyi-admin.jar.original" afterDir="false" />
<change beforePath="$PROJECT_DIR$/ruoyi-common/target/maven-archiver/pom.properties" beforeDir="false" afterPath="$PROJECT_DIR$/ruoyi-common/target/maven-archiver/pom.properties" afterDir="false" />
<change beforePath="$PROJECT_DIR$/ruoyi-common/target/ruoyi-common-3.8.7.jar" beforeDir="false" afterPath="$PROJECT_DIR$/ruoyi-common/target/ruoyi-common-3.8.7.jar" afterDir="false" />
<change beforePath="$PROJECT_DIR$/ruoyi-framework/target/maven-archiver/pom.properties" beforeDir="false" afterPath="$PROJECT_DIR$/ruoyi-framework/target/maven-archiver/pom.properties" afterDir="false" />
<change beforePath="$PROJECT_DIR$/ruoyi-framework/target/ruoyi-framework-3.8.7.jar" beforeDir="false" afterPath="$PROJECT_DIR$/ruoyi-framework/target/ruoyi-framework-3.8.7.jar" afterDir="false" />
<change beforePath="$PROJECT_DIR$/ruoyi-generator/target/maven-archiver/pom.properties" beforeDir="false" afterPath="$PROJECT_DIR$/ruoyi-generator/target/maven-archiver/pom.properties" afterDir="false" />
<change beforePath="$PROJECT_DIR$/ruoyi-generator/target/ruoyi-generator-3.8.7.jar" beforeDir="false" afterPath="$PROJECT_DIR$/ruoyi-generator/target/ruoyi-generator-3.8.7.jar" afterDir="false" />
<change beforePath="$PROJECT_DIR$/ruoyi-quartz/target/maven-archiver/pom.properties" beforeDir="false" afterPath="$PROJECT_DIR$/ruoyi-quartz/target/maven-archiver/pom.properties" afterDir="false" />
<change beforePath="$PROJECT_DIR$/ruoyi-quartz/target/ruoyi-quartz-3.8.7.jar" beforeDir="false" afterPath="$PROJECT_DIR$/ruoyi-quartz/target/ruoyi-quartz-3.8.7.jar" afterDir="false" />
<change beforePath="$PROJECT_DIR$/ruoyi-system/src/main/resources/mapper/bid/BidMapper.xml" beforeDir="false" afterPath="$PROJECT_DIR$/ruoyi-system/src/main/resources/mapper/bid/BidMapper.xml" afterDir="false" />
<change beforePath="$PROJECT_DIR$/ruoyi-system/target/classes/mapper/bid/BidMapper.xml" beforeDir="false" afterPath="$PROJECT_DIR$/ruoyi-system/target/classes/mapper/bid/BidMapper.xml" afterDir="false" />
<change beforePath="$PROJECT_DIR$/ruoyi-system/target/maven-archiver/pom.properties" beforeDir="false" afterPath="$PROJECT_DIR$/ruoyi-system/target/maven-archiver/pom.properties" afterDir="false" />
<change beforePath="$PROJECT_DIR$/ruoyi-system/target/ruoyi-system-3.8.7.jar" beforeDir="false" afterPath="$PROJECT_DIR$/ruoyi-system/target/ruoyi-system-3.8.7.jar" afterDir="false" />
<change beforePath="$PROJECT_DIR$/ruoyi-ui/src/views/authorize/authorize/index.vue" beforeDir="false" afterPath="$PROJECT_DIR$/ruoyi-ui/src/views/authorize/authorize/index.vue" afterDir="false" />
<change beforePath="$PROJECT_DIR$/ruoyi-ui/src/views/bid/bid/index.vue" beforeDir="false" afterPath="$PROJECT_DIR$/ruoyi-ui/src/views/bid/bid/index.vue" afterDir="false" />
<change beforePath="$PROJECT_DIR$/ruoyi-ui/src/views/components/Tools/ChangeRecord/index.vue" beforeDir="false" afterPath="$PROJECT_DIR$/ruoyi-ui/src/views/components/Tools/ChangeRecord/index.vue" afterDir="false" />
<change beforePath="$PROJECT_DIR$/ruoyi-ui/src/views/expenses/expenses/index.vue" beforeDir="false" afterPath="$PROJECT_DIR$/ruoyi-ui/src/views/expenses/expenses/index.vue" afterDir="false" />
<change beforePath="$PROJECT_DIR$/ruoyi-ui/src/views/zgys/zgys/index.vue" beforeDir="false" afterPath="$PROJECT_DIR$/ruoyi-ui/src/views/zgys/zgys/index.vue" afterDir="false" />
</list>
<option name="SHOW_DIALOG" value="false" />
<option name="HIGHLIGHT_CONFLICTS" value="true" />
@ -114,7 +132,11 @@
<workItem from="1723507256466" duration="16854000" />
<workItem from="1723528634025" duration="10204000" />
<workItem from="1723593971831" duration="16747000" />
<workItem from="1723619606185" duration="3268000" />
<workItem from="1723619606185" duration="4876000" />
<workItem from="1723625299449" duration="411000" />
<workItem from="1723625746006" duration="427000" />
<workItem from="1723680480083" duration="5930000" />
<workItem from="1723688318121" duration="4000" />
</task>
<servers />
</component>
@ -162,66 +184,66 @@
</state>
<state x="740" y="274" key="FileChooserDialogImpl/0.0.1920.1040/1920.0.1440.900@0.0.1920.1040" timestamp="1722996900988" />
<state x="2475" y="237" key="FileChooserDialogImpl/0.0.1920.1040/1920.0.1440.900@1920.0.1440.900" timestamp="1723017044285" />
<state width="1396" height="233" key="GridCell.Tab.0.bottom" timestamp="1723622095600">
<state width="1396" height="250" key="GridCell.Tab.0.bottom" timestamp="1723688303432">
<screen x="1920" y="0" width="1440" height="900" />
</state>
<state width="1876" height="280" key="GridCell.Tab.0.bottom/0.0.1920.1040/1920.0.1440.900@0.0.1920.1040" timestamp="1723620753557" />
<state width="1396" height="233" key="GridCell.Tab.0.bottom/0.0.1920.1040/1920.0.1440.900@1920.0.1440.900" timestamp="1723622095600" />
<state width="1396" height="233" key="GridCell.Tab.0.center" timestamp="1723622095600">
<state width="1396" height="250" key="GridCell.Tab.0.bottom/0.0.1920.1040/1920.0.1440.900@1920.0.1440.900" timestamp="1723688303432" />
<state width="1396" height="250" key="GridCell.Tab.0.center" timestamp="1723688303432">
<screen x="1920" y="0" width="1440" height="900" />
</state>
<state width="1876" height="280" key="GridCell.Tab.0.center/0.0.1920.1040/1920.0.1440.900@0.0.1920.1040" timestamp="1723620753557" />
<state width="1396" height="233" key="GridCell.Tab.0.center/0.0.1920.1040/1920.0.1440.900@1920.0.1440.900" timestamp="1723622095600" />
<state width="1396" height="233" key="GridCell.Tab.0.left" timestamp="1723622095600">
<state width="1396" height="250" key="GridCell.Tab.0.center/0.0.1920.1040/1920.0.1440.900@1920.0.1440.900" timestamp="1723688303432" />
<state width="1396" height="250" key="GridCell.Tab.0.left" timestamp="1723688303432">
<screen x="1920" y="0" width="1440" height="900" />
</state>
<state width="1876" height="280" key="GridCell.Tab.0.left/0.0.1920.1040/1920.0.1440.900@0.0.1920.1040" timestamp="1723620753556" />
<state width="1396" height="233" key="GridCell.Tab.0.left/0.0.1920.1040/1920.0.1440.900@1920.0.1440.900" timestamp="1723622095600" />
<state width="1396" height="233" key="GridCell.Tab.0.right" timestamp="1723622095600">
<state width="1396" height="250" key="GridCell.Tab.0.left/0.0.1920.1040/1920.0.1440.900@1920.0.1440.900" timestamp="1723688303432" />
<state width="1396" height="250" key="GridCell.Tab.0.right" timestamp="1723688303432">
<screen x="1920" y="0" width="1440" height="900" />
</state>
<state width="1876" height="280" key="GridCell.Tab.0.right/0.0.1920.1040/1920.0.1440.900@0.0.1920.1040" timestamp="1723620753557" />
<state width="1396" height="233" key="GridCell.Tab.0.right/0.0.1920.1040/1920.0.1440.900@1920.0.1440.900" timestamp="1723622095600" />
<state width="1396" height="233" key="GridCell.Tab.1.bottom" timestamp="1723622096413">
<state width="1396" height="250" key="GridCell.Tab.0.right/0.0.1920.1040/1920.0.1440.900@1920.0.1440.900" timestamp="1723688303432" />
<state width="1396" height="173" key="GridCell.Tab.1.bottom" timestamp="1723685620294">
<screen x="1920" y="0" width="1440" height="900" />
</state>
<state width="1876" height="280" key="GridCell.Tab.1.bottom/0.0.1920.1040/1920.0.1440.900@0.0.1920.1040" timestamp="1723620753558" />
<state width="1396" height="233" key="GridCell.Tab.1.bottom/0.0.1920.1040/1920.0.1440.900@1920.0.1440.900" timestamp="1723622096413" />
<state width="1396" height="233" key="GridCell.Tab.1.center" timestamp="1723622096413">
<state width="1396" height="173" key="GridCell.Tab.1.bottom/0.0.1920.1040/1920.0.1440.900@1920.0.1440.900" timestamp="1723685620294" />
<state width="1396" height="173" key="GridCell.Tab.1.center" timestamp="1723685620294">
<screen x="1920" y="0" width="1440" height="900" />
</state>
<state width="1876" height="280" key="GridCell.Tab.1.center/0.0.1920.1040/1920.0.1440.900@0.0.1920.1040" timestamp="1723620753557" />
<state width="1396" height="233" key="GridCell.Tab.1.center/0.0.1920.1040/1920.0.1440.900@1920.0.1440.900" timestamp="1723622096413" />
<state width="1396" height="233" key="GridCell.Tab.1.left" timestamp="1723622096413">
<state width="1396" height="173" key="GridCell.Tab.1.center/0.0.1920.1040/1920.0.1440.900@1920.0.1440.900" timestamp="1723685620294" />
<state width="1396" height="173" key="GridCell.Tab.1.left" timestamp="1723685620294">
<screen x="1920" y="0" width="1440" height="900" />
</state>
<state width="1876" height="280" key="GridCell.Tab.1.left/0.0.1920.1040/1920.0.1440.900@0.0.1920.1040" timestamp="1723620753557" />
<state width="1396" height="233" key="GridCell.Tab.1.left/0.0.1920.1040/1920.0.1440.900@1920.0.1440.900" timestamp="1723622096413" />
<state width="1396" height="233" key="GridCell.Tab.1.right" timestamp="1723622096413">
<state width="1396" height="173" key="GridCell.Tab.1.left/0.0.1920.1040/1920.0.1440.900@1920.0.1440.900" timestamp="1723685620294" />
<state width="1396" height="173" key="GridCell.Tab.1.right" timestamp="1723685620294">
<screen x="1920" y="0" width="1440" height="900" />
</state>
<state width="1876" height="280" key="GridCell.Tab.1.right/0.0.1920.1040/1920.0.1440.900@0.0.1920.1040" timestamp="1723620753557" />
<state width="1396" height="233" key="GridCell.Tab.1.right/0.0.1920.1040/1920.0.1440.900@1920.0.1440.900" timestamp="1723622096413" />
<state width="1876" height="280" key="GridCell.Tab.2.bottom" timestamp="1723622048204">
<state width="1396" height="173" key="GridCell.Tab.1.right/0.0.1920.1040/1920.0.1440.900@1920.0.1440.900" timestamp="1723685620294" />
<state width="1396" height="195" key="GridCell.Tab.2.bottom" timestamp="1723625231379">
<screen x="1920" y="0" width="1440" height="900" />
</state>
<state width="1876" height="280" key="GridCell.Tab.2.bottom/0.0.1920.1040/1920.0.1440.900@0.0.1920.1040" timestamp="1723620753558" />
<state width="1876" height="280" key="GridCell.Tab.2.bottom/0.0.1920.1040/1920.0.1440.900@1920.0.1440.900" timestamp="1723622048204" />
<state width="1876" height="280" key="GridCell.Tab.2.center" timestamp="1723622048204">
<state width="1396" height="195" key="GridCell.Tab.2.bottom/0.0.1920.1040/1920.0.1440.900@1920.0.1440.900" timestamp="1723625231379" />
<state width="1396" height="195" key="GridCell.Tab.2.center" timestamp="1723625231379">
<screen x="1920" y="0" width="1440" height="900" />
</state>
<state width="1876" height="280" key="GridCell.Tab.2.center/0.0.1920.1040/1920.0.1440.900@0.0.1920.1040" timestamp="1723620753558" />
<state width="1876" height="280" key="GridCell.Tab.2.center/0.0.1920.1040/1920.0.1440.900@1920.0.1440.900" timestamp="1723622048204" />
<state width="1876" height="280" key="GridCell.Tab.2.left" timestamp="1723622048204">
<state width="1396" height="195" key="GridCell.Tab.2.center/0.0.1920.1040/1920.0.1440.900@1920.0.1440.900" timestamp="1723625231379" />
<state width="1396" height="195" key="GridCell.Tab.2.left" timestamp="1723625231379">
<screen x="1920" y="0" width="1440" height="900" />
</state>
<state width="1876" height="280" key="GridCell.Tab.2.left/0.0.1920.1040/1920.0.1440.900@0.0.1920.1040" timestamp="1723620753558" />
<state width="1876" height="280" key="GridCell.Tab.2.left/0.0.1920.1040/1920.0.1440.900@1920.0.1440.900" timestamp="1723622048204" />
<state width="1876" height="280" key="GridCell.Tab.2.right" timestamp="1723622048204">
<state width="1396" height="195" key="GridCell.Tab.2.left/0.0.1920.1040/1920.0.1440.900@1920.0.1440.900" timestamp="1723625231379" />
<state width="1396" height="195" key="GridCell.Tab.2.right" timestamp="1723625231379">
<screen x="1920" y="0" width="1440" height="900" />
</state>
<state width="1876" height="280" key="GridCell.Tab.2.right/0.0.1920.1040/1920.0.1440.900@0.0.1920.1040" timestamp="1723620753558" />
<state width="1876" height="280" key="GridCell.Tab.2.right/0.0.1920.1040/1920.0.1440.900@1920.0.1440.900" timestamp="1723622048204" />
<state width="1396" height="195" key="GridCell.Tab.2.right/0.0.1920.1040/1920.0.1440.900@1920.0.1440.900" timestamp="1723625231379" />
<state x="2203" y="104" key="Maven.ArtifactSearchDialog" timestamp="1722820075785">
<screen x="1920" y="0" width="1440" height="900" />
</state>
@ -230,10 +252,10 @@
<screen x="1920" y="0" width="1440" height="900" />
</state>
<state x="2378" y="150" key="RollbackChangesDialog/0.0.1920.1040/1920.0.1440.900@1920.0.1440.900" timestamp="1722820179295" />
<state x="2141" y="81" key="SettingsEditor" timestamp="1723597483389">
<state x="2141" y="81" key="SettingsEditor" timestamp="1723625832687">
<screen x="1920" y="0" width="1440" height="900" />
</state>
<state x="2141" y="81" key="SettingsEditor/0.0.1920.1040/1920.0.1440.900@1920.0.1440.900" timestamp="1723597483389" />
<state x="2141" y="81" key="SettingsEditor/0.0.1920.1040/1920.0.1440.900@1920.0.1440.900" timestamp="1723625832687" />
<state width="968" height="528" key="XDebugger.FullValuePopup" timestamp="1722924775619">
<screen x="0" y="0" width="1920" height="1040" />
</state>

View File

@ -0,0 +1,11 @@
#for tests only !
#Thu Aug 15 08:36:29 CST 2024
jco.client.lang=ZH
jco.client.passwd=eS(El@-%R^,S+Ln%+BaDj^~il|H,NH,oC-b~T^.mO%Dy#Eek
jco.client.sysnr=00
jco.destination.pool_capacity=10
jco.client.client=800
jco.destination.peak_limit=10
jco.client.user=RFC
jco.client.saprouter=
jco.client.ashost=172.19.0.125

View File

@ -501,8 +501,8 @@ public class BidController extends BaseController
bidJsqr.setBidJsxzGroupValues(bidJsxzGroup);
bidJsqr.setBidJsxzTechnicalRequirement(bid.getBidJsxzTechnicalRequirement());
bidJsqr.setBidJsxzApprovalStatus("1");//投标单-技术确认单 状态设置为 协助中
bidJsqr.setBidJsqrCheckState("2".equals(bid.getBidJsxzApprovalStatus())?"0":"1");
bidJsqr.setBidJsqrCheckInfo(bid.getBidJsqrCheckInfo());
bidJsqr.setBidJsqrCheckState("1");//投标单-技术确认单 业务员技术确认状态设置为 未确认
bidJsqr.setBidJsqrCheckInfo("");//投标单-技术确认单 业务员技术确认信息设置为
//特缆低压中压其他 协助状态设置
if(bidJsxzGroup.indexOf("TL")!=-1){
@ -578,7 +578,7 @@ public class BidController extends BaseController
bidHj.setBidId(bid.getBidId());
bidHj.setBidJsxzConfirmId(bid.getBidJsxzConfirmId());
bidHj.setBidHjApprovalStatus("1");//投标-核价单 状态设置为 协助中
bidHj.setBidJsqrCheckState("2".equals(bid.getBidJsxzApprovalStatus())?"0":"1");
bidHj.setBidJsqrCheckState(bid.getBidJsqrCheckState());
bidHj.setBidJsqrCheckInfo(bid.getBidJsqrCheckInfo());
bidHj.setCreateBy(String.valueOf(getUserId()));

View File

@ -12,36 +12,34 @@ import com.ruoyi.common.enums.BusinessType;
import com.ruoyi.common.enums.DataSourceType;
import com.ruoyi.common.utils.DateUtils;
import com.ruoyi.common.utils.StringUtils;
import com.ruoyi.common.utils.file.FileUploadUtils;
import com.ruoyi.common.utils.poi.ExcelUtil;
import com.ruoyi.common.utils.uuid.UUID;
import com.ruoyi.customer.domain.Customer;
import com.ruoyi.quot.domain.Quot;
import com.ruoyi.quot.domain.QuotFile;
import com.ruoyi.quot.domain.QuotMaterial;
import com.ruoyi.quot.service.IQuotFileService;
import com.ruoyi.quot.service.IQuotService;
import com.ruoyi.redBook.domain.*;
import com.ruoyi.redBook.service.IRedBookService;
import com.ruoyi.redBook.service.impl.AsyncRbTaskService;
import com.ruoyi.web.utils.IdUtils;
import com.ruoyi.web.utils.ListSplitUtil;
import com.ruoyi.web.utils.rbExcel.excelUtil;
import org.apache.commons.collections.CollectionUtils;
import org.apache.commons.io.FileUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.mock.web.MockMultipartFile;
import org.springframework.web.bind.annotation.*;
import org.springframework.web.multipart.MultipartFile;
import org.springframework.web.multipart.commons.CommonsMultipartFile;
import javax.annotation.PostConstruct;
import javax.annotation.Resource;
import javax.servlet.http.HttpServletResponse;
import java.io.*;
import java.io.File;
import java.io.FileInputStream;
import java.io.IOException;
import java.math.BigDecimal;
import java.math.RoundingMode;
import java.util.*;
import java.util.ArrayList;
import java.util.Collections;
import java.util.List;
import java.util.concurrent.ExecutionException;
import java.util.concurrent.Future;
@ -221,14 +219,15 @@ public class RedBookController extends BaseController
public List<Product> handleSearchData(Product product)
{
List<Product> list = new ArrayList<>();
String name_0 = product.getName_0();//型号
String model = product.getModel();//规格
if(!StringUtils.isBlank(name_0) || !StringUtils.isBlank(model) ){
if(!StringUtils.isBlank(name_0)){
name_0 = name_0.replace(" ","");
name_0 = name_0.toUpperCase();
String model = product.getModel();//规格规格
List<String> sqlParam = new ArrayList<String>();
if(!StringUtils.isBlank(model)){
String[] split = model.split("\\s");
for(String each : split){
sqlParam.add(each.toUpperCase());
}
list = redBookService.handleSearchData(name_0,model);
list = redBookService.handleSearchData(sqlParam);
}
return list;
}

View File

@ -1,5 +1,5 @@
#Generated by Maven
#Wed Aug 14 16:08:35 CST 2024
#Thu Aug 15 09:34:48 CST 2024
version=3.8.7
groupId=com.ruoyi
artifactId=ruoyi-admin

Binary file not shown.

View File

@ -1,5 +1,5 @@
#Generated by Maven
#Wed Aug 14 16:08:21 CST 2024
#Thu Aug 15 09:33:56 CST 2024
version=3.8.7
groupId=com.ruoyi
artifactId=ruoyi-common

View File

@ -1,5 +1,5 @@
#Generated by Maven
#Wed Aug 14 16:08:28 CST 2024
#Thu Aug 15 09:34:03 CST 2024
version=3.8.7
groupId=com.ruoyi
artifactId=ruoyi-framework

View File

@ -1,5 +1,5 @@
#Generated by Maven
#Wed Aug 14 16:08:31 CST 2024
#Thu Aug 15 09:34:05 CST 2024
version=3.8.7
groupId=com.ruoyi
artifactId=ruoyi-generator

View File

@ -1,5 +1,5 @@
#Generated by Maven
#Wed Aug 14 16:08:30 CST 2024
#Thu Aug 15 09:34:04 CST 2024
version=3.8.7
groupId=com.ruoyi
artifactId=ruoyi-quartz

View File

@ -1,9 +1,6 @@
package com.ruoyi.redBook.mapper;
import com.ruoyi.customer.domain.Customer;
import com.ruoyi.material.domain.CMaterial;
import com.ruoyi.material.domain.CMaterialCost;
import com.ruoyi.material.domain.temp;
import com.ruoyi.redBook.domain.OAQuot;
import com.ruoyi.redBook.domain.OAQuotProduct;
import com.ruoyi.redBook.domain.Product;
@ -71,11 +68,10 @@ public interface OARedBookMapper
/**
* 点击查询按钮查询数据
* @param name_0
* @param model
* @param sqlParam
* @return
*/
List<Product> handleSearchData(@Param("name_0")String name_0,@Param("model")String model);
List<Product> handleSearchData(List<String> sqlParam);
/**
* 保存报价单

View File

@ -1,9 +1,6 @@
package com.ruoyi.redBook.service;
import com.ruoyi.common.annotation.DataSource;
import com.ruoyi.common.enums.DataSourceType;
import com.ruoyi.customer.domain.Customer;
import com.ruoyi.quote.domain.CalculateRBParamDto;
import com.ruoyi.redBook.domain.*;
import java.util.List;
@ -67,11 +64,10 @@ public interface IRedBookService
/**
* 点击查询按钮查询数据
* @param name_0
* @param model
* @param sqlParam
* @return
*/
List<Product> handleSearchData(String name_0,String model);
List<Product> handleSearchData(List<String> sqlParam);
/**
* 保存报价单

View File

@ -6,9 +6,7 @@ import com.ruoyi.common.enums.DataSourceType;
import com.ruoyi.common.utils.DateUtils;
import com.ruoyi.common.utils.StringUtils;
import com.ruoyi.common.utils.uuid.UUID;
import com.ruoyi.customer.domain.Bank;
import com.ruoyi.customer.domain.Customer;
import com.ruoyi.material.domain.CMaterialCost;
import com.ruoyi.redBook.domain.*;
import com.ruoyi.redBook.mapper.OARedBookMapper;
import com.ruoyi.redBook.service.IRedBookService;
@ -103,13 +101,12 @@ public class RedBookServiceImpl implements IRedBookService
/**
* 点击查询按钮查询数据
* @param name_0
* @param model
* @param sqlParam
* @return
*/
@Override
public List<Product> handleSearchData(String name_0,String model) {
return oaRedBookMapper.handleSearchData(name_0,model);
public List<Product> handleSearchData(List<String> sqlParam) {
return oaRedBookMapper.handleSearchData(sqlParam);
}
/**

View File

@ -131,7 +131,7 @@
q.bid_jsqr_dy_approval_status,q.bid_jsqr_dy_remark,
q.bid_jsqr_zy_approval_status,q.bid_jsqr_zy_remark,
q.bid_jsqr_qt_approval_status,q.bid_jsqr_qt_remark,
a.bid_jsqr_check_state,a.bid_jsqr_check_info,
isnull(a.bid_jsqr_check_state,1) bid_jsqr_check_state,a.bid_jsqr_check_info,
a.bid_vice_president_approved,a.bid_oa_remark,a.bid_oa_isTp,

View File

@ -73,13 +73,10 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
convert(decimal,convert(float,A.红本价格)) price,convert(varchar(10),B.date_0,23) pricedate
from [rb_product_price] A
left join rb_productVersion B on A.version_uid_0=B.uid_0
where B.sta_0=1
<if test="name_0 != null and name_0 != ''">
and A.型号 like '%${name_0}%'
</if>
<if test="model != null and model != ''">
and A.规格 = #{model}
</if>
where B.sta_0=1 and
<foreach item="item" collection="list" open="(" separator=" and " close=")">
A.namevoltage like '%${item}%'
</foreach>
order by len(A.namevoltage)
</select>

View File

@ -131,7 +131,7 @@
q.bid_jsqr_dy_approval_status,q.bid_jsqr_dy_remark,
q.bid_jsqr_zy_approval_status,q.bid_jsqr_zy_remark,
q.bid_jsqr_qt_approval_status,q.bid_jsqr_qt_remark,
a.bid_jsqr_check_state,a.bid_jsqr_check_info,
isnull(a.bid_jsqr_check_state,1) bid_jsqr_check_state,a.bid_jsqr_check_info,
a.bid_vice_president_approved,a.bid_oa_remark,a.bid_oa_isTp,

View File

@ -1,5 +1,5 @@
#Generated by Maven
#Wed Aug 14 16:08:24 CST 2024
#Thu Aug 15 09:33:59 CST 2024
version=3.8.7
groupId=com.ruoyi
artifactId=ruoyi-system

View File

@ -231,7 +231,7 @@
<el-row :gutter="8">
<el-col :span="8">
<el-form-item label="类别" prop="doaPowerAttorneyPurpose">
<el-select v-model="form.doaPowerAttorneyPurpose" placeholder="请选择类别" :disabled="ywyDis||tbDis">
<el-select v-model="form.doaPowerAttorneyPurpose" placeholder="请选择类别" :disabled="ywyDis||tbDis" clearable>
<el-option
v-for="dict in dict.type.doa_power_attorney_purpose"
:key="dict.value"
@ -243,7 +243,7 @@
</el-col>
<el-col :span="8">
<el-form-item label="授权格式" prop="doaFormat">
<el-select v-model="form.doaFormat" placeholder="请选择有无格式" :disabled="ywyDis||tbDis">
<el-select v-model="form.doaFormat" placeholder="请选择有无格式" :disabled="ywyDis||tbDis" clearable>
<el-option
v-for="dict in dict.type.doa_format"
:key="dict.value"
@ -350,7 +350,7 @@
</el-col>
<el-col :span="8">
<el-form-item label="是否存档" prop="doaArchiving">
<el-select v-model="form.doaArchiving" placeholder="请选择是否存档">
<el-select v-model="form.doaArchiving" placeholder="请选择是否存档" clearable>
<el-option
v-for="dict in dict.type.doa_archiving"
:key="dict.value"

View File

@ -850,7 +850,7 @@
</el-col>
<el-col :span="6">
<el-form-item label="开闭口" prop="bidOpenClose">
<el-select v-model="form.bidOpenClose" :disabled="tbDis">
<el-select v-model="form.bidOpenClose" :disabled="tbDis" clearable>
<el-option
v-for="dict in dict.type.bid_open_close"
:key="dict.value"
@ -864,7 +864,7 @@
<el-row :gutter="8">
<el-col :span="6">
<el-form-item label="调价通知" prop="bidPriceAdjustmentNotice">
<el-select v-model="form.bidPriceAdjustmentNotice":disabled="tbDis">
<el-select v-model="form.bidPriceAdjustmentNotice" :disabled="tbDis" clearable @clear="clearBidPriceAdjustmentNotice">
<el-option
v-for="item in versionList"
:key="item.value"
@ -947,7 +947,7 @@
</el-col>
<el-col :span="6">
<el-form-item label="是否竞价" prop="bidBidding">
<el-select v-model="form.bidBidding" :disabled="tbDis">
<el-select v-model="form.bidBidding" :disabled="tbDis" clearable>
<el-option
v-for="dict in dict.type.bid_bidding"
:key="dict.value"
@ -959,7 +959,7 @@
</el-col>
<el-col :span="6">
<el-form-item label="有无中标通知书" prop="bidNotificationAward">
<el-select v-model="form.bidNotificationAward">
<el-select v-model="form.bidNotificationAward" clearable>
<el-option
v-for="dict in dict.type.bid_notification_award"
:key="dict.value"
@ -971,7 +971,7 @@
</el-col>
<el-col :span="6">
<el-form-item label="投标状态" prop="bidStatus">
<el-select v-model="form.bidStatus">
<el-select v-model="form.bidStatus" clearable>
<el-option
v-for="dict in dict.type.bid_status"
:key="dict.value"
@ -1476,6 +1476,12 @@ export default {
this.form.bidLvPrice = response.data.lv_price_0;
})
},
//-
clearBidPriceAdjustmentNotice(){
this.form.bidTongPrice = null;
this.form.bidLvPrice = null;
},
//
cancel() {
this.open = false;

View File

@ -1,7 +1,7 @@
<template>
<el-table height="450" v-loading="loading" :data="records" :span-method="objectSpanMethod">
<el-table-column label="变更日期" align="center" prop="changeTime"/>
<el-table height="100%" v-loading="loading" :data="records" :span-method="objectSpanMethod">
<el-table-column label="变更事件" align="center" prop="title"/>
<el-table-column label="变更日期" align="center" prop="changeTime"/>
<el-table-column label="变更字段" align="center" prop="changeField"/>
<el-table-column label="变更前" align="center" prop="beforeChange"/>
<el-table-column label="变更后" align="center" prop="afterChange"/>
@ -23,7 +23,7 @@
//
records: [],
mergeObj: {}, //
mergeArr: ['changeTime','title', 'createName'] //
mergeArr: ['title','changeTime','createName'] //
}
},
watch: {

View File

@ -298,7 +298,7 @@
</el-col>
<el-col :span="8">
<el-form-item label="支出形式" prop="expExpenditureMode">
<el-select v-model="form.expExpenditureMode" placeholder="请选择支出形式" :disabled="ywyDis||tbDis">
<el-select v-model="form.expExpenditureMode" placeholder="请选择支出形式" :disabled="ywyDis||tbDis" clearable>
<el-option
v-for="dict in dict.type.exp_expenditure_mode"
:key="dict.value"
@ -320,7 +320,7 @@
</el-col>
<el-col :span="8">
<el-form-item label="支出人" prop="expExpenditurePeople">
<el-select v-model="form.expExpenditurePeople" placeholder="请选择支出人" :disabled="ywyDis||tbDis">
<el-select v-model="form.expExpenditurePeople" placeholder="请选择支出人" :disabled="ywyDis||tbDis" clearable>
<el-option
v-for="dict in dict.type.exp_expenditure_people"
:key="dict.value"
@ -332,7 +332,7 @@
</el-col>
<el-col :span="8">
<el-form-item label="支出类别" prop="expExpenditureType">
<el-select v-model="form.expExpenditureType" placeholder="请选择支出类别" :disabled="ywyDis||tbDis">
<el-select v-model="form.expExpenditureType" placeholder="请选择支出类别" :disabled="ywyDis||tbDis" clearable>
<el-option
v-for="dict in dict.type.exp_expenditure_type"
:key="dict.value"
@ -369,7 +369,7 @@
</el-col>
<el-col :span="8">
<el-form-item label="投标区域" prop="expBidArea">
<el-select v-model="form.expBidArea" placeholder="请选择投标区域" :disabled="ywyDis||tbDis">
<el-select v-model="form.expBidArea" placeholder="请选择投标区域" :disabled="ywyDis||tbDis" clearable>
<el-option
v-for="dict in dict.type.exp_bid_area"
:key="dict.value"
@ -399,7 +399,7 @@
</el-col>
<el-col :span="8">
<el-form-item label="是否有内勤" prop="expStaffTureorfales">
<el-select v-model="form.expStaffTureorfales" placeholder="请选择是否有内勤" :disabled="ywyDis||tbDis">
<el-select v-model="form.expStaffTureorfales" placeholder="请选择是否有内勤" :disabled="ywyDis||tbDis" clearable>
<el-option
v-for="dict in dict.type.exp_staff_tureorfales"
:key="dict.value"
@ -412,7 +412,7 @@
<el-col :span="8">
<el-form-item label="选择内勤" prop="expBackOfficeId" :rules="[{required:expBackOfficeIdRequire,message:'选择内勤不能为空',trigger:'change'}]">
<el-input v-model="form.expBackOffice" v-if="false"/>
<el-select v-model="form.expBackOfficeId" placeholder="请选择内勤" :disabled="ywyDis||tbDis||this.form.expStaffTureorfales!='0'">
<el-select v-model="form.expBackOfficeId" placeholder="请选择内勤" :disabled="ywyDis||tbDis||this.form.expStaffTureorfales!='0'" clearable>
<el-option
v-for="dict in oaOfficeStaff"
:key="dict.expBackOfficeId"

View File

@ -3,9 +3,8 @@
<el-form label-width="80px" :model="form">
<el-row :gutter="5">
<el-col :span="10">
<el-input style="width:30%" size="mini" v-model="queryParams.name_0" placeholder="型号 模糊查询"></el-input>
<el-input style="width:30%;margin-left: 5px;" size="mini" v-model="queryParams.model" placeholder="规格 模糊查询"></el-input>
<el-button style="float: right;" size="mini" type="primary" icon="el-icon-search" @click="handleSearchClick">搜索</el-button>
<el-input style="width:30%;" size="mini" v-model="queryParams.model" placeholder="型号规格 模糊查询"></el-input>
<el-button style="margin-left: 5px;" size="mini" type="primary" icon="el-icon-search" @click="handleSearchClick">搜索</el-button>
</el-col>
<el-col :span="14">
<el-button style="float: right;margin-left: 5px;" size="mini" type="success" icon="el-icon-document" @click="handleMadeQuotClick" :disabled="selectedResultData.length==0 || madeQuotDis">生成报价单</el-button>
@ -385,7 +384,6 @@
this.tableHeight = (window.innerHeight - 340) + 'px';
},
methods: {
/** 查看报价单转报价操作 */
handleQuotInfo(row) {
const quotId = row.quotId;

View File

@ -281,7 +281,7 @@
<el-row :gutter="8">
<el-col :span="8">
<el-form-item label="类别" prop="pqIllustrate">
<el-select v-model="form.pqIllustrate" placeholder="请选择类别" :disabled="ywyDis||tbDis">
<el-select v-model="form.pqIllustrate" placeholder="请选择类别" :disabled="ywyDis||tbDis" clearable>
<el-option
v-for="dict in dict.type.pq_illustrate"
:key="dict.value"
@ -305,7 +305,7 @@
</el-col>
<el-col :span="8">
<el-form-item label="是否存档" prop="pqArchiving">
<el-select v-model="form.pqArchiving" placeholder="请选择是否存档" :disabled="tbDis">
<el-select v-model="form.pqArchiving" placeholder="请选择是否存档" :disabled="tbDis" clearable>
<el-option
v-for="dict in dict.type.pq_archiving"
:key="dict.value"