OA对接,插入中间表
This commit is contained in:
parent
14465188a6
commit
fcedf22c8d
|
@ -14,8 +14,7 @@ import com.ruoyi.common.utils.file.MinioUtil;
|
|||
import com.ruoyi.common.utils.uuid.UUID;
|
||||
import com.ruoyi.priceVerification.domain.QuotHj;
|
||||
import com.ruoyi.priceVerification.service.IQuotHjService;
|
||||
import com.ruoyi.quot.domain.QuotFile;
|
||||
import com.ruoyi.quot.domain.QuotMaterial;
|
||||
import com.ruoyi.quot.domain.*;
|
||||
import com.ruoyi.quot.service.IQuotFileService;
|
||||
import com.ruoyi.system.service.ISysConfigService;
|
||||
import com.ruoyi.system.service.ISysNoticeService;
|
||||
|
@ -31,7 +30,6 @@ import com.ruoyi.common.annotation.Log;
|
|||
import com.ruoyi.common.core.controller.BaseController;
|
||||
import com.ruoyi.common.core.domain.AjaxResult;
|
||||
import com.ruoyi.common.enums.BusinessType;
|
||||
import com.ruoyi.quot.domain.Quot;
|
||||
import com.ruoyi.quot.service.IQuotService;
|
||||
import com.ruoyi.common.utils.poi.ExcelUtil;
|
||||
import com.ruoyi.common.core.page.TableDataInfo;
|
||||
|
@ -464,8 +462,35 @@ public class QuotController extends BaseController
|
|||
@PostMapping("/commitOAQuot")
|
||||
public AjaxResult commitOAQuot(@RequestBody Quot quot)
|
||||
{
|
||||
|
||||
// TODO 对接OA
|
||||
// 报价单提交OA,插入中间表 sys_oa_quot sys_oa_quot_material
|
||||
SysOaQuot sysOaQuot = new SysOaQuot();
|
||||
SysOaQuot oauser = quotService.selectOAUserByUserName(getUsername());// 查询OA用户
|
||||
if(oauser==null){
|
||||
return error("该账户:"+getUsername()+"在OA中不存在");
|
||||
}
|
||||
|
||||
sysOaQuot.setUserId(oauser.getUserId());
|
||||
sysOaQuot.setDepartmentId(oauser.getUserId());
|
||||
sysOaQuot.setDepartmentId(oauser.getDepartmentId());
|
||||
sysOaQuot.setSubmissionTime(DateUtils.getTime());
|
||||
sysOaQuot.setQuotId(UUID.fastUUID().toString());
|
||||
sysOaQuot.setQuotCode(quot.getQuotCode());
|
||||
sysOaQuot.setQuotSalesmanName(quot.getQuotSalesmanName());
|
||||
sysOaQuot.setQuotCustomerName(quot.getQuotCustomerName());
|
||||
sysOaQuot.setQuotAddress(quot.getQuotAddress());
|
||||
sysOaQuot.setQuotPhone(quot.getQuotPhone());
|
||||
sysOaQuot.setQuotInquiryDate(quot.getQuotInquiryDate());
|
||||
sysOaQuot.setQuotProject(quot.getQuotProject());
|
||||
sysOaQuot.setQuotQuotationRequire(quot.getQuotQuotationRequire());
|
||||
sysOaQuot.setQuotLvPrice(quot.getQuotLvPrice());
|
||||
sysOaQuot.setQuotTongPrice(quot.getQuotTongPrice());
|
||||
sysOaQuot.setQuotMatpriceDiff(quot.getQuotMatpriceDiff());
|
||||
|
||||
sysOaQuot.setMaterials(quot.getQuotMaterialList());
|
||||
|
||||
quotService.insertSysOAQuot(sysOaQuot);
|
||||
|
||||
quot.setQuotOAApprovalStatus("1");// 更新OA提交状态为 审批中
|
||||
quotService.updateQuot(quot);
|
||||
return success();
|
||||
|
|
|
@ -61,6 +61,15 @@ spring:
|
|||
url: jdbc:sqlserver://192.168.9.2:1433;DatabaseName=jn_web
|
||||
username: sa
|
||||
password: it12345
|
||||
# OA数据库数据源
|
||||
oa:
|
||||
# 从数据源开关/默认关闭
|
||||
enabled: true
|
||||
driver-class-name: com.microsoft.sqlserver.jdbc.SQLServerDriver
|
||||
# 正式数据库
|
||||
url: jdbc:sqlserver://192.168.9.182:1433;DatabaseName=ecology
|
||||
username: sa
|
||||
password: Itcenter110-
|
||||
# 初始连接数
|
||||
initialSize: 10
|
||||
# 最小连接池数量
|
||||
|
|
|
@ -43,6 +43,12 @@ public enum DataSourceType
|
|||
* @author JIAL
|
||||
* @updateTime 2024/5/24 15:50
|
||||
*/
|
||||
ORDER
|
||||
ORDER,
|
||||
|
||||
/**
|
||||
* OA数据库
|
||||
*/
|
||||
OA
|
||||
|
||||
|
||||
}
|
||||
|
|
|
@ -94,6 +94,15 @@ public class DruidConfig
|
|||
return druidProperties.dataSource(dataSource);
|
||||
}
|
||||
|
||||
@Bean
|
||||
@ConfigurationProperties("spring.datasource.druid.oa")
|
||||
@ConditionalOnProperty(prefix = "spring.datasource.druid.oa", name = "enabled", havingValue = "true")
|
||||
public DataSource oaDataSource(DruidProperties druidProperties)
|
||||
{
|
||||
DruidDataSource dataSource = DruidDataSourceBuilder.create().build();
|
||||
return druidProperties.dataSource(dataSource);
|
||||
}
|
||||
|
||||
@Bean(name = "dynamicDataSource")
|
||||
@Primary
|
||||
public DynamicDataSource dataSource(DataSource masterDataSource)
|
||||
|
@ -106,6 +115,7 @@ public class DruidConfig
|
|||
setDataSource(targetDataSources, DataSourceType.JNERP.name(), "jnerpDataSource");
|
||||
setDataSource(targetDataSources, DataSourceType.STORAGE.name(), "storageDataSource");
|
||||
setDataSource(targetDataSources, DataSourceType.ORDER.name(), "orderDataSource");
|
||||
setDataSource(targetDataSources, DataSourceType.OA.name(), "oaDataSource");
|
||||
return new DynamicDataSource(masterDataSource, targetDataSources);
|
||||
}
|
||||
|
||||
|
|
|
@ -0,0 +1,194 @@
|
|||
package com.ruoyi.quot.domain;
|
||||
|
||||
import com.ruoyi.common.annotation.Excel;
|
||||
import com.ruoyi.common.core.domain.BaseEntity;
|
||||
|
||||
import java.util.Date;
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* 报价对象 SysOaQuot
|
||||
*
|
||||
* @author ruoyi
|
||||
* @date 2024-04-01
|
||||
*/
|
||||
public class SysOaQuot 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 quotId;
|
||||
|
||||
/** 报价单号 */
|
||||
private String quotCode;
|
||||
|
||||
/** 业务员 */
|
||||
private String quotSalesmanName;
|
||||
|
||||
/** 客户名称 */
|
||||
private String quotCustomerName;
|
||||
|
||||
/** 地址 */
|
||||
private String quotAddress;
|
||||
|
||||
/** 联系电话 */
|
||||
private String quotPhone;
|
||||
|
||||
/** 询价日期 */
|
||||
private Date quotInquiryDate;
|
||||
|
||||
/** 项目名称 */
|
||||
private String quotProject;
|
||||
|
||||
/** 报价要求 */
|
||||
private String quotQuotationRequire;
|
||||
|
||||
/** 铝价 */
|
||||
private String quotLvPrice;
|
||||
|
||||
/** 铜价 */
|
||||
private String quotTongPrice;
|
||||
|
||||
/** 整单料价价差率 */
|
||||
private String quotMatpriceDiff;
|
||||
|
||||
/** 明细 */
|
||||
List<QuotMaterial> materials;
|
||||
|
||||
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 getQuotId() {
|
||||
return quotId;
|
||||
}
|
||||
|
||||
public void setQuotId(String quotId) {
|
||||
this.quotId = quotId;
|
||||
}
|
||||
|
||||
public String getQuotCode() {
|
||||
return quotCode;
|
||||
}
|
||||
|
||||
public void setQuotCode(String quotCode) {
|
||||
this.quotCode = quotCode;
|
||||
}
|
||||
|
||||
public String getQuotSalesmanName() {
|
||||
return quotSalesmanName;
|
||||
}
|
||||
|
||||
public void setQuotSalesmanName(String quotSalesmanName) {
|
||||
this.quotSalesmanName = quotSalesmanName;
|
||||
}
|
||||
|
||||
public String getQuotCustomerName() {
|
||||
return quotCustomerName;
|
||||
}
|
||||
|
||||
public void setQuotCustomerName(String quotCustomerName) {
|
||||
this.quotCustomerName = quotCustomerName;
|
||||
}
|
||||
|
||||
public String getQuotAddress() {
|
||||
return quotAddress;
|
||||
}
|
||||
|
||||
public void setQuotAddress(String quotAddress) {
|
||||
this.quotAddress = quotAddress;
|
||||
}
|
||||
|
||||
public String getQuotPhone() {
|
||||
return quotPhone;
|
||||
}
|
||||
|
||||
public void setQuotPhone(String quotPhone) {
|
||||
this.quotPhone = quotPhone;
|
||||
}
|
||||
|
||||
public Date getQuotInquiryDate() {
|
||||
return quotInquiryDate;
|
||||
}
|
||||
|
||||
public void setQuotInquiryDate(Date quotInquiryDate) {
|
||||
this.quotInquiryDate = quotInquiryDate;
|
||||
}
|
||||
|
||||
public String getQuotProject() {
|
||||
return quotProject;
|
||||
}
|
||||
|
||||
public void setQuotProject(String quotProject) {
|
||||
this.quotProject = quotProject;
|
||||
}
|
||||
|
||||
public String getQuotQuotationRequire() {
|
||||
return quotQuotationRequire;
|
||||
}
|
||||
|
||||
public void setQuotQuotationRequire(String quotQuotationRequire) {
|
||||
this.quotQuotationRequire = quotQuotationRequire;
|
||||
}
|
||||
|
||||
public String getQuotLvPrice() {
|
||||
return quotLvPrice;
|
||||
}
|
||||
|
||||
public void setQuotLvPrice(String quotLvPrice) {
|
||||
this.quotLvPrice = quotLvPrice;
|
||||
}
|
||||
|
||||
public String getQuotTongPrice() {
|
||||
return quotTongPrice;
|
||||
}
|
||||
|
||||
public void setQuotTongPrice(String quotTongPrice) {
|
||||
this.quotTongPrice = quotTongPrice;
|
||||
}
|
||||
|
||||
public String getQuotMatpriceDiff() {
|
||||
return quotMatpriceDiff;
|
||||
}
|
||||
|
||||
public void setQuotMatpriceDiff(String quotMatpriceDiff) {
|
||||
this.quotMatpriceDiff = quotMatpriceDiff;
|
||||
}
|
||||
|
||||
public List<QuotMaterial> getMaterials() {
|
||||
return materials;
|
||||
}
|
||||
|
||||
public void setMaterials(List<QuotMaterial> materials) {
|
||||
this.materials = materials;
|
||||
}
|
||||
}
|
|
@ -0,0 +1,192 @@
|
|||
package com.ruoyi.quot.domain;
|
||||
|
||||
import com.ruoyi.common.annotation.Excel;
|
||||
import com.ruoyi.common.core.domain.BaseEntity;
|
||||
|
||||
import java.math.BigDecimal;
|
||||
|
||||
/**
|
||||
* 报价单-产品对象 SysOaQuotMaterial
|
||||
*
|
||||
* @author ruoyi
|
||||
* @date 2024-04-01
|
||||
*/
|
||||
public class SysOaQuotMaterial extends BaseEntity
|
||||
{
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
/** 产品ID */
|
||||
private String matId;
|
||||
|
||||
/** 型号 */
|
||||
private String matXingh;
|
||||
|
||||
/** 规格 */
|
||||
private String matGuig;
|
||||
|
||||
/** 电压 */
|
||||
private String matDiany;
|
||||
|
||||
/** 标准 */
|
||||
private String matStandard;
|
||||
|
||||
/** 单位 */
|
||||
private String matDanw;
|
||||
|
||||
/** 数量 */
|
||||
private BigDecimal matSl;
|
||||
|
||||
/** 备注 */
|
||||
private String matRemark;
|
||||
|
||||
/** 料价 */
|
||||
private BigDecimal matMatprice;
|
||||
|
||||
/** 红本价 */
|
||||
private BigDecimal matPrice;
|
||||
|
||||
/** 报价 */
|
||||
private BigDecimal matQuotPrice;
|
||||
|
||||
/** 报价金额 */
|
||||
private BigDecimal matQuotAllPrice;
|
||||
|
||||
/** 料价价差率 */
|
||||
private BigDecimal matMatpriceDiff;
|
||||
|
||||
/** 序号 */
|
||||
private Integer xh;//序号
|
||||
/** 行号 */
|
||||
private Integer index;//行号
|
||||
|
||||
/** 报价单ID */
|
||||
private String quotId;
|
||||
|
||||
public String getMatId() {
|
||||
return matId;
|
||||
}
|
||||
|
||||
public void setMatId(String matId) {
|
||||
this.matId = matId;
|
||||
}
|
||||
|
||||
public String getMatXingh() {
|
||||
return matXingh;
|
||||
}
|
||||
|
||||
public void setMatXingh(String matXingh) {
|
||||
this.matXingh = matXingh;
|
||||
}
|
||||
|
||||
public String getMatGuig() {
|
||||
return matGuig;
|
||||
}
|
||||
|
||||
public void setMatGuig(String matGuig) {
|
||||
this.matGuig = matGuig;
|
||||
}
|
||||
|
||||
public String getMatDiany() {
|
||||
return matDiany;
|
||||
}
|
||||
|
||||
public void setMatDiany(String matDiany) {
|
||||
this.matDiany = matDiany;
|
||||
}
|
||||
|
||||
public String getMatStandard() {
|
||||
return matStandard;
|
||||
}
|
||||
|
||||
public void setMatStandard(String matStandard) {
|
||||
this.matStandard = matStandard;
|
||||
}
|
||||
|
||||
public String getMatDanw() {
|
||||
return matDanw;
|
||||
}
|
||||
|
||||
public void setMatDanw(String matDanw) {
|
||||
this.matDanw = matDanw;
|
||||
}
|
||||
|
||||
public BigDecimal getMatSl() {
|
||||
return matSl;
|
||||
}
|
||||
|
||||
public void setMatSl(BigDecimal matSl) {
|
||||
this.matSl = matSl;
|
||||
}
|
||||
|
||||
public String getMatRemark() {
|
||||
return matRemark;
|
||||
}
|
||||
|
||||
public void setMatRemark(String matRemark) {
|
||||
this.matRemark = matRemark;
|
||||
}
|
||||
|
||||
public BigDecimal getMatMatprice() {
|
||||
return matMatprice;
|
||||
}
|
||||
|
||||
public void setMatMatprice(BigDecimal matMatprice) {
|
||||
this.matMatprice = matMatprice;
|
||||
}
|
||||
|
||||
public BigDecimal getMatPrice() {
|
||||
return matPrice;
|
||||
}
|
||||
|
||||
public void setMatPrice(BigDecimal matPrice) {
|
||||
this.matPrice = matPrice;
|
||||
}
|
||||
|
||||
public BigDecimal getMatQuotPrice() {
|
||||
return matQuotPrice;
|
||||
}
|
||||
|
||||
public void setMatQuotPrice(BigDecimal matQuotPrice) {
|
||||
this.matQuotPrice = matQuotPrice;
|
||||
}
|
||||
|
||||
public BigDecimal getMatQuotAllPrice() {
|
||||
return matQuotAllPrice;
|
||||
}
|
||||
|
||||
public void setMatQuotAllPrice(BigDecimal matQuotAllPrice) {
|
||||
this.matQuotAllPrice = matQuotAllPrice;
|
||||
}
|
||||
|
||||
public BigDecimal getMatMatpriceDiff() {
|
||||
return matMatpriceDiff;
|
||||
}
|
||||
|
||||
public void setMatMatpriceDiff(BigDecimal matMatpriceDiff) {
|
||||
this.matMatpriceDiff = matMatpriceDiff;
|
||||
}
|
||||
|
||||
public Integer getXh() {
|
||||
return xh;
|
||||
}
|
||||
|
||||
public void setXh(Integer xh) {
|
||||
this.xh = xh;
|
||||
}
|
||||
|
||||
public Integer getIndex() {
|
||||
return index;
|
||||
}
|
||||
|
||||
public void setIndex(Integer index) {
|
||||
this.index = index;
|
||||
}
|
||||
|
||||
public String getQuotId() {
|
||||
return quotId;
|
||||
}
|
||||
|
||||
public void setQuotId(String quotId) {
|
||||
this.quotId = quotId;
|
||||
}
|
||||
}
|
|
@ -3,6 +3,7 @@ package com.ruoyi.quot.mapper;
|
|||
import java.util.List;
|
||||
import com.ruoyi.quot.domain.Quot;
|
||||
import com.ruoyi.quot.domain.QuotMaterial;
|
||||
import com.ruoyi.quot.domain.SysOaQuot;
|
||||
import org.apache.ibatis.annotations.Param;
|
||||
|
||||
/**
|
||||
|
@ -122,4 +123,22 @@ public interface QuotMapper
|
|||
*/
|
||||
String checkExistQuot(@Param("quotSalesmanCode") String username, @Param("quotCustomerBm") String quotCustomerBm, @Param("quotProject") String quotProject);
|
||||
|
||||
/**
|
||||
* 报价单提交OA,插入中间表 sys_oa_quot sys_oa_quot_material
|
||||
* @param sysOaQuot
|
||||
*/
|
||||
void insertSysOAQuot(SysOaQuot sysOaQuot);
|
||||
|
||||
/**
|
||||
* 查询OA用户
|
||||
* @param loginid
|
||||
* @return
|
||||
*/
|
||||
SysOaQuot selectOAUserByUserName(String loginid);
|
||||
|
||||
/**
|
||||
* 报价单提交OA,插入中间表 sys_oa_quot sys_oa_quot_material
|
||||
* @param subList
|
||||
*/
|
||||
void batchSysOaQuotMaterial(List<QuotMaterial> subList);
|
||||
}
|
||||
|
|
|
@ -4,6 +4,7 @@ import java.util.List;
|
|||
|
||||
import com.ruoyi.customer.domain.Customer;
|
||||
import com.ruoyi.quot.domain.Quot;
|
||||
import com.ruoyi.quot.domain.SysOaQuot;
|
||||
|
||||
/**
|
||||
* 报价Service接口
|
||||
|
@ -105,4 +106,16 @@ public interface IQuotService
|
|||
*/
|
||||
Boolean checkExistQuot(String username, String quotCustomerBm, String quotProject);
|
||||
|
||||
|
||||
/**
|
||||
* 报价单提交OA,插入中间表 sys_oa_quot sys_oa_quot_material
|
||||
* @param sysOaQuot
|
||||
*/
|
||||
void insertSysOAQuot(SysOaQuot sysOaQuot);
|
||||
|
||||
/**
|
||||
* 查询OA用户
|
||||
* @return
|
||||
*/
|
||||
SysOaQuot selectOAUserByUserName(String loginid);
|
||||
}
|
||||
|
|
|
@ -3,9 +3,12 @@ package com.ruoyi.quot.service.impl;
|
|||
import java.util.List;
|
||||
|
||||
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 com.ruoyi.common.utils.uuid.UUID;
|
||||
import com.ruoyi.customer.domain.Customer;
|
||||
import com.ruoyi.quot.domain.SysOaQuot;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.stereotype.Service;
|
||||
import java.util.ArrayList;
|
||||
|
@ -176,6 +179,26 @@ public class QuotServiceImpl implements IQuotService
|
|||
return !"0".equals(count);
|
||||
}
|
||||
|
||||
/**
|
||||
* 报价单提交OA,插入中间表 sys_oa_quot sys_oa_quot_material
|
||||
* @param sysOaQuot
|
||||
*/
|
||||
@Override
|
||||
public void insertSysOAQuot(SysOaQuot sysOaQuot) {
|
||||
quotMapper.insertSysOAQuot(sysOaQuot);
|
||||
insertSysOAQuotMaterial(sysOaQuot);
|
||||
}
|
||||
|
||||
/**
|
||||
* 查询OA用户
|
||||
* @return
|
||||
*/
|
||||
@Override
|
||||
@DataSource(DataSourceType.OA)
|
||||
public SysOaQuot selectOAUserByUserName(String loginid) {
|
||||
return quotMapper.selectOAUserByUserName(loginid);
|
||||
}
|
||||
|
||||
/**
|
||||
* 新增报价单-产品信息
|
||||
*
|
||||
|
@ -206,4 +229,35 @@ public class QuotServiceImpl implements IQuotService
|
|||
}
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* 新增报价单-OA产品信息
|
||||
*
|
||||
* @param sysOaQuot 报价对象
|
||||
*/
|
||||
public void insertSysOAQuotMaterial(SysOaQuot sysOaQuot)
|
||||
{
|
||||
List<QuotMaterial> quotMaterialList = sysOaQuot.getMaterials();
|
||||
String quotId = sysOaQuot.getQuotId();
|
||||
if (StringUtils.isNotNull(quotMaterialList))
|
||||
{
|
||||
List<QuotMaterial> list = new ArrayList<QuotMaterial>();
|
||||
for (QuotMaterial quotMaterial : quotMaterialList)
|
||||
{
|
||||
quotMaterial.setMatId(UUID.fastUUID().toString());
|
||||
//TODO 标准
|
||||
quotMaterial.setQuotId(quotId);
|
||||
list.add(quotMaterial);
|
||||
}
|
||||
if (list.size() > 0)
|
||||
{
|
||||
int batchSize = 100; // 每批次插入的数据量
|
||||
for (int i = 0; i < list.size(); i += batchSize) {
|
||||
int toIndex = Math.min(i + batchSize, list.size());
|
||||
List<QuotMaterial> subList = list.subList(i, toIndex);
|
||||
quotMapper.batchSysOaQuotMaterial(subList);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -85,6 +85,8 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
|
|||
<result property="matQuotPrice" column="sub_mat_quot_price" />
|
||||
<result property="matQuotAllPrice" column="sub_mat_quot_allPrice" />
|
||||
<result property="matMatpriceDiff" column="sub_mat_matprice_diff" />
|
||||
<result property="xh" column="sub_xh" />
|
||||
<result property="index" column="sub_number" />
|
||||
|
||||
<result property="quotId" column="sub_quot_id" />
|
||||
</resultMap>
|
||||
|
@ -174,6 +176,9 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
|
|||
b.mat_quot_allPrice as sub_mat_quot_allPrice,
|
||||
b.mat_matprice_diff as sub_mat_matprice_diff,
|
||||
|
||||
b.xh as sub_xh,
|
||||
b.number as sub_number,
|
||||
|
||||
b.quot_id as sub_quot_id
|
||||
from quot a
|
||||
left join quot_material b on b.quot_id = a.quot_id
|
||||
|
@ -289,6 +294,48 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
|
|||
</trim>
|
||||
</insert>
|
||||
|
||||
|
||||
<select id="selectOAUserByUserName" resultType="SysOaQuot">
|
||||
select top 1 id as userId,departmentid as departmentId from HrmResource where loginid = #{loginid}
|
||||
</select>
|
||||
<insert id="insertSysOAQuot" parameterType="SysOaQuot">
|
||||
insert into sys_oa_quot
|
||||
<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="quotId != null and quotId != ''">quot_id,</if>
|
||||
<if test="quotCode != null and quotCode != ''">quot_code,</if>
|
||||
<if test="quotSalesmanName != null and quotSalesmanName != ''">quot_salesman_name,</if>
|
||||
<if test="quotCustomerName != null and quotCustomerName != ''">quot_customer_name,</if>
|
||||
<if test="quotAddress != null">quot_address,</if>
|
||||
<if test="quotPhone != null">quot_phone,</if>
|
||||
<if test="quotInquiryDate != null">quot_inquiry_date,</if>
|
||||
<if test="quotProject != null and quotProject != ''">quot_project,</if>
|
||||
<if test="quotQuotationRequire != null and quotQuotationRequire != ''">quot_quotation_require,</if>
|
||||
<if test="quotLvPrice != null">quot_lv_price,</if>
|
||||
<if test="quotTongPrice != null">quot_tong_price,</if>
|
||||
<if test="quotMatpriceDiff != null">quot_matprice_diff,</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="quotId != null and quotId != ''">#{quotId},</if>
|
||||
<if test="quotCode != null and quotCode != ''">#{quotCode},</if>
|
||||
<if test="quotSalesmanName != null and quotSalesmanName != ''">#{quotSalesmanName},</if>
|
||||
<if test="quotCustomerName != null and quotCustomerName != ''">#{quotCustomerName},</if>
|
||||
<if test="quotAddress != null">#{quotAddress},</if>
|
||||
<if test="quotPhone != null">#{quotPhone},</if>
|
||||
<if test="quotInquiryDate != null">#{quotInquiryDate},</if>
|
||||
<if test="quotProject != null and quotProject != ''">#{quotProject},</if>
|
||||
<if test="quotQuotationRequire != null and quotQuotationRequire != ''">#{quotQuotationRequire},</if>
|
||||
<if test="quotLvPrice != null">#{quotLvPrice},</if>
|
||||
<if test="quotTongPrice != null">#{quotTongPrice},</if>
|
||||
<if test="quotMatpriceDiff != null">#{quotMatpriceDiff},</if>
|
||||
</trim>
|
||||
</insert>
|
||||
|
||||
<update id="updateQuot" parameterType="Quot">
|
||||
update quot
|
||||
<trim prefix="SET" suffixOverrides=",">
|
||||
|
@ -368,6 +415,13 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
|
|||
</foreach>
|
||||
</insert>
|
||||
|
||||
<insert id="batchSysOaQuotMaterial">
|
||||
insert into sys_oa_quot_material( mat_id, mat_xingh, mat_guig, mat_diany,mat_standard, mat_danw, mat_sl,mat_remark, quot_id,xh,number,mat_matprice,mat_price,mat_quot_price,mat_quot_allPrice,mat_matprice_diff) values
|
||||
<foreach item="item" index="index" collection="list" separator=",">
|
||||
( #{item.matId}, #{item.matXingh}, #{item.matGuig}, #{item.matDiany}, #{item.matStandard}, #{item.matDanw}, cast(#{item.matSl,jdbcType=DECIMAL} as decimal(18,3)),#{item.matRemark}, #{item.quotId}, #{item.xh}, #{item.index}, cast(#{item.matMatprice,jdbcType=DECIMAL} as decimal(18,3)), cast(#{item.matPrice,jdbcType=DECIMAL} as decimal(18,3)), cast(#{item.matQuotPrice,jdbcType=DECIMAL} as decimal(18,3)),cast(#{item.matQuotAllPrice,jdbcType=DECIMAL} as decimal(18,3)), cast(#{item.matMatpriceDiff,jdbcType=DECIMAL} as decimal(18,3)))
|
||||
</foreach>
|
||||
</insert>
|
||||
|
||||
<select id="selectQuotByQuotJsqrId" parameterType="String" resultMap="QuotQuotMaterialResult">
|
||||
select a.quot_id, a.quot_code, a.quot_salesman_bm, a.quot_salesman_name, a.quot_customer_name,
|
||||
a.quot_salesman_dept_id, a.quot_salesman_dept_name, a.quot_address, a.quot_phone, a.quot_inquiry_date,
|
||||
|
|
|
@ -147,6 +147,16 @@
|
|||
</el-table-column>
|
||||
<el-table-column label="数量" align="center" prop="quotQuantity" width="100"/>
|
||||
<el-table-column label="反馈说明" align="center" prop="quotFeedbackExplanation" width="150px"/>
|
||||
<el-table-column label="金思维提交状态" align="center" prop="quotJsxzApprovalStatus" width="150px">
|
||||
<template slot-scope="scope">
|
||||
<dict-tag :options="dict.type.quot_jsw_approval_status" :value="scope.row.quotJswApprovalStatus" v-if="scope.row.quotJswApprovalStatus!=0"/>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column label="OA提交状态" align="center" prop="quotJsxzApprovalStatus" width="150px">
|
||||
<template slot-scope="scope">
|
||||
<dict-tag :options="dict.type.quot_oa_approval_status" :value="scope.row.quotOAApprovalStatus" v-if="scope.row.quotOAApprovalStatus!=0"/>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column label="技术协助状态" align="center" prop="quotJsxzApprovalStatus" width="150px">
|
||||
<template slot-scope="scope">
|
||||
<dict-tag :options="dict.type.quot_jsxz_approval_status" :value="scope.row.quotJsxzApprovalStatus" v-if="scope.row.quotJsxzApprovalStatus!=0"/>
|
||||
|
@ -200,12 +210,12 @@
|
|||
</el-col>
|
||||
<el-col :span="4">
|
||||
<el-form-item label="金思维协助" prop="quotJswApprovalStatus">
|
||||
<dict-tag :options="dict.type.quot_approval_status" :value="this.form.quotJswApprovalStatus"/>
|
||||
<dict-tag :options="dict.type.quot_jsw_approval_status" :value="this.form.quotJswApprovalStatus"/>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="4">
|
||||
<el-form-item label="OA审批" prop="quotOAApprovalStatus">
|
||||
<dict-tag :options="dict.type.quot_approval_status" :value="this.form.quotOAApprovalStatus"/>
|
||||
<dict-tag :options="dict.type.quot_oa_approval_status" :value="this.form.quotOAApprovalStatus"/>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
</div>
|
||||
|
|
Loading…
Reference in New Issue