Browse Source

代码恢复

master
liupopo 2 years ago
parent
commit
391a8ec7ca
  1. 15
      yxt_supervise/supervise-customer/supervise-customer-api/src/main/java/com/yxt/supervise/customer/api/purchaserequisition/PurchaseRequisition.java
  2. 6
      yxt_supervise/supervise-customer/supervise-customer-api/src/main/java/com/yxt/supervise/customer/api/purchaserequisitionpro/PurchaseRequisitionPro.java
  3. 9
      yxt_supervise/supervise-customer/supervise-customer-biz/src/main/java/com/yxt/supervise/customer/biz/productinformation/ProductInformationService.java
  4. 5
      yxt_supervise/supervise-customer/supervise-customer-biz/src/main/java/com/yxt/supervise/customer/biz/purchaserequisition/PurchaseRequisitionMapper.java
  5. 56
      yxt_supervise/supervise-customer/supervise-customer-biz/src/main/java/com/yxt/supervise/customer/biz/purchaserequisition/PurchaseRequisitionRest.java
  6. 701
      yxt_supervise/supervise-customer/supervise-customer-biz/src/main/java/com/yxt/supervise/customer/biz/purchaserequisition/PurchaseRequisitionService.java
  7. 32
      yxt_supervise/supervise-customer/supervise-customer-biz/src/main/java/com/yxt/supervise/customer/biz/purchaserequisitionpro/PurchaseRequisitionProRest.java
  8. 98
      yxt_supervise/supervise-customer/supervise-customer-biz/src/main/java/com/yxt/supervise/customer/biz/purchaserequisitionpro/PurchaseRequisitionProService.java
  9. 10
      yxt_supervise/supervise-customer/supervise-customer-biz/src/main/java/com/yxt/supervise/customer/biz/restrictedbrand/RestrictedBrandService.java
  10. 23
      yxt_supervise/supervise-customer/supervise-customer-biz/src/main/java/com/yxt/supervise/customer/biz/restrictedcategory/RestrictedCategoryService.java
  11. 499
      yxt_supervise/supervise-customer/supervise-customer-biz/src/main/java/com/yxt/supervise/customer/biz/supplierbankinfo/SupplierBankInfoService.java
  12. 16
      yxt_supervise/supervise-customer/supervise-customer-biz/src/main/java/com/yxt/supervise/customer/biz/supplierindex/SupplierIndexService.java

15
yxt_supervise/supervise-customer/supervise-customer-api/src/main/java/com/yxt/supervise/customer/api/purchaserequisition/PurchaseRequisition.java

@ -38,6 +38,8 @@ public class PurchaseRequisition extends BaseEntity {
private String supplierName; // 供应商名称
@ApiModelProperty("供应商编码")
private String supplierCode; // 供应商编码
@ApiModelProperty("供应商唯一编码")
private String supplierOnlyCode; // 供应商编码
@ApiModelProperty("物流公司名称")
private String logisticsCompanyName; // 物流公司名称
@ApiModelProperty("物流公司编码")
@ -56,4 +58,17 @@ public class PurchaseRequisition extends BaseEntity {
private String completionStatus;//完成状态
@ApiModelProperty("完成状态")
private String completionStatusKey;//完成状态
@ApiModelProperty("监管0未审核,1审核通过,2审核不通过")
private String purchaseState = "0";
@ApiModelProperty("监管审批意见")
private String purchaseRemarks;
@ApiModelProperty("银行0未审核,1审核通过,2审核不通过")
private String bankState = "0"; // 银行0未审核,1审核通过,2审核不通过',
@ApiModelProperty("银行审批意见")
private String bankRemarks; // 银行审批意见',
}

6
yxt_supervise/supervise-customer/supervise-customer-api/src/main/java/com/yxt/supervise/customer/api/purchaserequisitionpro/PurchaseRequisitionPro.java

@ -58,4 +58,10 @@ public class PurchaseRequisitionPro extends BaseEntity {
private String secondCode;// 第二代码
@ApiModelProperty("零售金额")
private String retailAmount;// 零售金额
@ApiModelProperty("含税金额")
private Double taxInclusiveAmount;// 含税金额
@ApiModelProperty("配货金额")
private Double distributionAmount;// 配货金额
@ApiModelProperty("订单编号")
private String preqCode;// 订单编号
}

9
yxt_supervise/supervise-customer/supervise-customer-biz/src/main/java/com/yxt/supervise/customer/biz/productinformation/ProductInformationService.java

@ -536,4 +536,13 @@ public class ProductInformationService extends MybatisBaseService<ProductInforma
public ProductInformationVo limitJudgement(String code) {
return baseMapper.limitJudgement(code);
}
public ProductInformation fetchByCode(String proCode) {
QueryWrapper<ProductInformation> qw = new QueryWrapper<>();
qw.eq("code",proCode);
List<ProductInformation> list = baseMapper.selectList(qw);
if(list==null||list.isEmpty())
return null;
return list.get(0);
}
}

5
yxt_supervise/supervise-customer/supervise-customer-biz/src/main/java/com/yxt/supervise/customer/biz/purchaserequisition/PurchaseRequisitionMapper.java

@ -14,6 +14,7 @@ import com.yxt.supervise.customer.api.restrictedbrand.RestrictedBrand;
import com.yxt.supervise.customer.api.restrictedbrand.RestrictedBrandVo;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
import org.apache.ibatis.annotations.Select;
import java.util.List;
@ -27,4 +28,8 @@ public interface PurchaseRequisitionMapper extends BaseMapper<PurchaseRequisitio
IPage<PurchaseRequisitionVo> selectPageVo(IPage<PurchaseRequisition> page, @Param(Constants.WRAPPER) Wrapper<PurchaseRequisition> qw);
//查询导出的数据
List<PurchaseRequisitionExcelVo> exportExcel(@Param(Constants.WRAPPER) Wrapper<PurchaseRequisition> qw);
@Select("select sum(packageTotalPrice) amount from purchase_requisition_pro prp " +
"left join purchase_requisition pr on pr.sid =prp.mainSid " +
"where pr.purchaseState=1 and pr.bankState=1 and pr.supplierOnlyCode=#{supplierOnlyCode}")
double amountBySupplierOnlyCode(@Param("supplierOnlyCode") String supplierOnlyCode);
}

56
yxt_supervise/supervise-customer/supervise-customer-biz/src/main/java/com/yxt/supervise/customer/biz/purchaserequisition/PurchaseRequisitionRest.java

@ -4,17 +4,14 @@ import com.alibaba.excel.EasyExcel;
import com.yxt.common.core.query.PagerQuery;
import com.yxt.common.core.result.ResultBean;
import com.yxt.common.core.vo.PagerVo;
import com.yxt.supervise.customer.api.gdwholesalegd.GdWholesaleGdExcelVo;
import com.yxt.supervise.customer.api.gdwholesalegd.GdWholesaleGdQuery;
import com.yxt.supervise.customer.api.purchaserequisition.PurchaseRequisitionExcelVo;
import com.yxt.supervise.customer.api.purchaserequisition.PurchaseRequisitionFeign;
import com.yxt.supervise.customer.api.purchaserequisition.PurchaseRequisitionQuery;
import com.yxt.supervise.customer.api.purchaserequisition.PurchaseRequisitionVo;
import com.yxt.supervise.customer.api.restrictedbrand.RestrictedBrandQuery;
import com.yxt.supervise.customer.api.restrictedbrand.RestrictedBrandVo;
import com.yxt.supervise.customer.api.purchaserequisition.*;
import com.yxt.supervise.customer.api.purchaserequisitionpro.PurchaseRequisitionPro;
import com.yxt.supervise.customer.api.supplierbankinfo.PurchaseRequisitionCheckVo;
import com.yxt.supervise.customer.biz.supplierbankinfo.SupplierBankInfoService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
import org.springframework.web.multipart.MultipartFile;
@ -35,7 +32,10 @@ import java.util.List;
public class PurchaseRequisitionRest implements PurchaseRequisitionFeign {
@Autowired
PurchaseRequisitionService purchaseRequisitionService;
private PurchaseRequisitionService purchaseRequisitionService;
@Autowired
private SupplierBankInfoService supplierBankInfoService;
@ApiOperation("根据条件分页查询数据的列表")
@PostMapping("/listPage")
public ResultBean<PagerVo<PurchaseRequisitionVo>> listPage(@RequestBody PagerQuery<PurchaseRequisitionQuery> pq) {
@ -43,15 +43,16 @@ public class PurchaseRequisitionRest implements PurchaseRequisitionFeign {
PagerVo<PurchaseRequisitionVo> pv = purchaseRequisitionService.listPageVo(pq);
return rb.success().setData(pv);
}
@PostMapping("/exportExcel")
@ApiOperation(value = "采购订单数据导出")
public void exportExcel(@RequestBody PagerQuery<PurchaseRequisitionQuery> pq, HttpServletResponse response) throws IOException {
//得到所有要导出的数据
List<PurchaseRequisitionExcelVo> excelVos = purchaseRequisitionService.exportExcel(pq);
String fileName = "采购订单" + System.currentTimeMillis() + ".xlsx";
response.setContentType( "application/vnd.ms-excel");
response.setContentType("application/vnd.ms-excel");
response.setCharacterEncoding("utf8");
response.setHeader("Content-disposition","attachment;filename="+ fileName );
response.setHeader("Content-disposition", "attachment;filename=" + fileName);
// 这里 需要指定写用哪个class去读,然后写到第一个sheet,名字为模板 然后文件流会自动关闭
// 如果这里想使用03 则 传入excelType参数即可
ServletOutputStream outputStream = response.getOutputStream();
@ -62,9 +63,14 @@ public class PurchaseRequisitionRest implements PurchaseRequisitionFeign {
@ApiOperation("上传采购订单的EXCEL文件")
@PostMapping(value = "/uploadXlsxFile")
public ResultBean importBrandSort(@RequestParam("file") MultipartFile file) {
public ResultBean<PurchaseRequisition> uploadXlsxFile(@RequestParam("file") MultipartFile file) {
ResultBean rb = ResultBean.fireFail();
log.debug("---{},{}", file.getOriginalFilename(), file.getName());
String filename = file.getOriginalFilename();
if (StringUtils.isBlank(filename))
return rb.setMsg("文件名不可为空");
if (filename.length() < 15)
return rb.setMsg("文件名格式错误");
rb = purchaseRequisitionService.uploadXlsxFile(file);
return rb;
}
@ -74,4 +80,28 @@ public class PurchaseRequisitionRest implements PurchaseRequisitionFeign {
log.debug("--checkCodeByFileName---{}", filename);
return purchaseRequisitionService.checkCodeByFileName(filename);
}
@ApiOperation("检测供应商信息状态")
@GetMapping("/checkSupplier/{sid}")
public ResultBean<List<PurchaseRequisitionPro>> checkSupplier(@PathVariable("sid") String sid) {
ResultBean rb = ResultBean.fireFail();
List<PurchaseRequisitionCheckVo> list = supplierBankInfoService.checkPurchaseRequisition(sid);
return rb.success().setData(list);
}
@ApiOperation("请求审核状态改为通过")
@GetMapping("/updatePurchaseStateSucess/{sid}")
public ResultBean updatePurchaseStateSucess(@PathVariable("sid") String sid) {
ResultBean rb = ResultBean.fireFail();
purchaseRequisitionService.updatePurchaseStateSucess(sid);
return rb.success();
}
@ApiOperation("上传后待提交给银行的订单列表")
@GetMapping("/listOfCheck")
public ResultBean<List<PurchaseRequisition>> listOfCheck() {
ResultBean rb = ResultBean.fireFail();
List<PurchaseRequisition> pv = purchaseRequisitionService.listOfCheck();
return rb.success().setData(pv);
}
}

701
yxt_supervise/supervise-customer/supervise-customer-biz/src/main/java/com/yxt/supervise/customer/biz/purchaserequisition/PurchaseRequisitionService.java

@ -1,35 +1,39 @@
package com.yxt.supervise.customer.biz.purchaserequisition;
import com.alibaba.fastjson.JSONObject;
import com.alibaba.excel.EasyExcel;
import com.alibaba.excel.context.AnalysisContext;
import com.alibaba.excel.read.builder.ExcelReaderBuilder;
import com.alibaba.excel.read.listener.ReadListener;
import com.alibaba.excel.read.metadata.holder.ReadRowHolder;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.yxt.common.base.service.MybatisBaseService;
import com.yxt.common.base.utils.PagerUtil;
import com.yxt.common.core.query.PagerQuery;
import com.yxt.common.core.result.ResultBean;
import com.yxt.common.core.vo.PagerVo;
import com.yxt.supervise.customer.api.gdwholesalegd.GdWholesaleGd;
import com.yxt.supervise.customer.api.gdwholesalegd.GdWholesaleGdExcelVo;
import com.yxt.supervise.customer.api.gdwholesalegd.GdWholesaleGdQuery;
import com.yxt.supervise.customer.api.purchaserequisition.PurchaseRequisition;
import com.yxt.supervise.customer.api.purchaserequisition.PurchaseRequisitionExcelVo;
import com.yxt.supervise.customer.api.purchaserequisition.PurchaseRequisitionQuery;
import com.yxt.supervise.customer.api.purchaserequisition.PurchaseRequisitionVo;
import com.yxt.supervise.customer.api.restrictedbrand.RestrictedBrand;
import com.yxt.supervise.customer.api.restrictedbrand.RestrictedBrandQuery;
import com.yxt.supervise.customer.api.restrictedbrand.RestrictedBrandVo;
import com.yxt.supervise.customer.api.purchaserequisitionpro.PurchaseRequisitionPro;
import com.yxt.supervise.customer.biz.purchaserequisitionpro.PurchaseRequisitionProService;
import com.yxt.supervise.customer.tools.StrTool;
import org.apache.commons.lang3.StringUtils;
import org.apache.poi.hssf.usermodel.HSSFCell;
import org.apache.poi.hssf.usermodel.HSSFCellStyle;
import org.apache.poi.hssf.usermodel.HSSFRow;
import org.apache.poi.hssf.usermodel.HSSFSheet;
import org.apache.poi.ss.usermodel.CellType;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.web.multipart.MultipartFile;
import java.io.IOException;
import java.math.BigDecimal;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.ArrayList;
import java.util.List;
import java.util.Map;
@ -40,6 +44,8 @@ import java.util.Map;
@Service
public class PurchaseRequisitionService extends MybatisBaseService<PurchaseRequisitionMapper, PurchaseRequisition> {
@Autowired
private PurchaseRequisitionProService purchaseRequisitionProService;
public PagerVo<PurchaseRequisitionVo> listPageVo(PagerQuery<PurchaseRequisitionQuery> pq) {
PurchaseRequisitionQuery query = pq.getParams();
@ -66,6 +72,7 @@ public class PurchaseRequisitionService extends MybatisBaseService<PurchaseRequi
PagerVo<PurchaseRequisitionVo> p = PagerUtil.pageToVo(pagging, null);
return p;
}
public List<PurchaseRequisitionExcelVo> exportExcel(PagerQuery<PurchaseRequisitionQuery> pq) {
PurchaseRequisitionQuery query = pq.getParams();
QueryWrapper<PurchaseRequisition> qw = new QueryWrapper<>();
@ -90,513 +97,219 @@ public class PurchaseRequisitionService extends MybatisBaseService<PurchaseRequi
return pagging;
}
public ResultBean<String> checkCodeByFileName(String filename) {
ResultBean rb = ResultBean.fireFail();
if (StringUtils.isBlank(filename))
return rb.setMsg("文件名不可为空");
if (filename.length() < 15)
return rb.setMsg("文件名格式错误");
String code = filename.substring(0, 14);
PurchaseRequisition purchaseRequisition = fetchByCode(code);
if (purchaseRequisition == null)
return rb.success().setData("nothas");
return rb.success().setData("hased");
}
public void supplierAnalysis() throws ParseException {
ztspglhzb();
gysddmxb();
public PurchaseRequisition fetchByCode(String code) {
QueryWrapper<PurchaseRequisition> qw = new QueryWrapper<>();
qw.eq("code", code);
List<PurchaseRequisition> list = baseMapper.selectList(qw);
if (list == null || list.isEmpty())
return null;
return list.get(0);
}
/**
* 在途商品管理汇总表
*
* @throws ParseException
*/
public void ztspglhzb() throws ParseException {
// Date date = new Date();
// SimpleDateFormat sdf1 = new SimpleDateFormat("yyyyMMdd");
// baseMapper.deleteAll();
// List<Map<String, Object>> list = baseMapper.ztspglhzb();//--在途商品管理汇总表
// for (Map<String, Object> m : list) {
// String billTotalPrice = m.get("billTotalPrice") != null ? m.get("billTotalPrice").toString() : "0";//订单总额
// String prodValue = m.get("prodValue") != null ? m.get("prodValue").toString() : "0";//实际到货价值
// String arrivalDate = m.get("arrivalDate") != null ? m.get("arrivalDate").toString() : "0";//全部到货日期
// SimpleDateFormat sdf = new SimpleDateFormat("yyyy.MM.dd");
// m.put("date", sdf.format(date));
// m.put("no", sdf1.format(date).toString() + "01");//编号
// BigDecimal bigDecimal = new BigDecimal(billTotalPrice); //总金额
// BigDecimal bigDecimal1 = new BigDecimal(prodValue);//到货金额
// BigDecimal subtract = bigDecimal.subtract(bigDecimal1);//有未到货的货值
// Date parse = sdf.parse(arrivalDate);
// long nowMillisecond = date.getTime();
// long arrivalMillisecond = parse.getTime();//到货日期
// if (nowMillisecond > arrivalMillisecond && subtract.compareTo(new BigDecimal("0")) == 1) {//是否延期 大于到货日期 并且在途货值大于0 为延期
// m.put("sfyq", "是");
// } else {
// m.put("sfyq", "否");
// }
// if (subtract.compareTo(new BigDecimal("0")) == 1) {
// m.put("wdhjz", subtract.toString());
// m.put("cchjz", "0");
// } else {
// m.put("wdhjz", "0");
// BigDecimal subtract2 = bigDecimal1.subtract(bigDecimal);
// m.put("cchjz", subtract2.toString());
// }
// }
// log.info("ztspglhzb:{}", JSONObject.toJSONString(list));
// baseMapper.insertZtspglhzb(list);
public ResultBean<PurchaseRequisition> uploadXlsxFile(MultipartFile file) {
ResultBean rb = ResultBean.fireFail();
PurchaseRequisition pr = new PurchaseRequisition();
pr.setPurchasingOrgCode("1");
pr.setPurchasingOrgName("36524集团");
pr.setPurchasingDeptCode("9001");
pr.setPurchasingDeptName("365生活通");
List<PurchaseRequisitionPro> proList = new ArrayList<>();
try {
ExcelReaderBuilder read = EasyExcel.read(file.getInputStream(), createReadListener(pr, proList));
read.sheet().doRead();
} catch (IOException e) {
e.printStackTrace();
return rb.setMsg("读取Excel文件异常:" + e.getMessage());
}
boolean canInsert = checkOrderAndDelete(pr);
if (canInsert) {
baseMapper.insert(pr);
purchaseRequisitionProService.saveBatch(proList);
return rb.success().setData(pr);
}
return rb.setMsg("该订单号已经审核过,不可修改。");
}
/**
* 供应商订单明细表
*/
public void gysddmxb() {
// Date date = new Date();
// SimpleDateFormat sdf1 = new SimpleDateFormat("yyyyMMdd");
// List<Map<String, String>> list2 = baseMapper.gysddmxb();//--供应商订单明细表
// for (Map<String, String> m : list2) {
// SimpleDateFormat sdf = new SimpleDateFormat("yyyy.MM.dd");
// String format = sdf.format(date);
// m.put("date", format.toString());
// String no = sdf1.format(date).toString() + "01";//编号
// m.put("no", no);
// }
// log.info("gysddmxb:{}", JSONObject.toJSONString(list2));
// baseMapper.deleteGysddmxb();
// baseMapper.insertGysddmxb(list2);
private boolean checkOrderAndDelete(PurchaseRequisition pr) {
String code = pr.getCode();
if (StringUtils.isBlank(code)) {
return false;
}
PurchaseRequisition ppr = this.fetchByCode(code);
if (ppr == null)
return true;
if ("0".equals(ppr.getPurchaseState()) && "0".equals(ppr.getBankState())) {
purchaseRequisitionProService.deletebyMainSid(ppr.getSid());
this.deleteBySid(ppr.getSid());
return true;
}
return false;
}
//
// public ResultBean<String> readBrandPeriodSorXls1(InputStream is) {
// /* int ii=uddatePrice();
// if(ii==1){
// return;
// }*/
// HSSFWorkbook hssfWorkbook = null;
// try {
// hssfWorkbook = new HSSFWorkbook(is);
// } catch (IOException e) {
// e.printStackTrace();
// }
//
// List<String> lisss=new ArrayList<>();
// List<String> lisss2=new ArrayList<>();
// HSSFSheet hssfSheet = hssfWorkbook.getSheetAt(0);
// PurchaseRequisition pr=new PurchaseRequisition();
// List<PurchaseRequisitionPro> prps=new ArrayList<>();
// pr.setPurchasingOrgCode("1");
// pr.setPurchasingOrgName("36524集团");
// pr.setPurchasingDeptCode("9001");
// pr.setPurchasingDeptName("365生活通");
// // 循环行Row
// for (int rowNum = 0; rowNum <=hssfSheet.getLastRowNum(); rowNum++) {
// HSSFRow hssfRow = hssfSheet.getRow(rowNum);
// int i = 0;
// try{
// //设置单号 填单人 填单时间
// /*if(rowNum==0){
// for ( ; i < hssfRow.getLastCellNum(); i++) {
// setRow0(pr, hssfRow, i);
// }
// }*/
// //设置单号 填单人 填单时间
// if(rowNum==1){
// for ( ; i < hssfRow.getLastCellNum(); i++) {
// setRow1(pr, hssfRow, i);
// }
// }
// //设置供货单位 仓位 到货日期
// if(rowNum==2){
// for ( ; i < hssfRow.getLastCellNum(); i++) {
// setRow2(pr, hssfRow, i);
// }
// }
// //设置采购员 入库单位 单据到效期
// if(rowNum==3){
// for ( ; i < hssfRow.getLastCellNum(); i++) {
// setRow3(pr, hssfRow, i);
// }
// }
// //设置采购员 入库单位 单据到效期
// if(rowNum==4){
// for ( ; i < hssfRow.getLastCellNum(); i++) {
// setRow4(pr, hssfRow, i);
// }
// }
// if(rowNum>6){
// ProductInformation p=new ProductInformation();
// PurchaseRequisitionPro prp = new PurchaseRequisitionPro();
// prp.setMainSid(pr.getSid());
// String hsje="";//含税金额
// for ( ; i < hssfRow.getLastCellNum(); i++) {
// HSSFCell brandIdHSSFCell = hssfRow.getCell(i);
// if(brandIdHSSFCell!=null){
// if (i == 1) {//商品代码
// brandIdHSSFCell.setCellType(CellType.STRING);
// String code = brandIdHSSFCell.getStringCellValue();
// ProductInformationVo productInformation=productInformationService.selectByCode(code);
// if(productInformation==null){
// p.setCode(code);
// }else{
// prp.setCategory(productInformation.getCategory());
// prp.setCategoryKey(productInformation.getCategoryKey());
// prp.setBrand(productInformation.getBrand());
// prp.setBrandCode(productInformation.getBrandSid());
// }
// prp.setProCode(code);
// prp.setContent("code");//规格型号
// }
// if (i == 2) {//名称
// brandIdHSSFCell.setCellType(CellType.STRING);
// if (StringUtils.isNotBlank(brandIdHSSFCell.getStringCellValue())) {
// String name = brandIdHSSFCell.getStringCellValue();
// prp.setProName(name);
// p.setName(name);
// }
// }
// if (i == 3) {//数量
// brandIdHSSFCell.setCellType(CellType.STRING);
// if (StringUtils.isNotBlank(brandIdHSSFCell.getStringCellValue())) {
// String value = brandIdHSSFCell.getStringCellValue();
// prp.setNumber(value);
// }
// }
// if (i == 10) {//第二代码
// brandIdHSSFCell.setCellType(CellType.STRING);
// if (StringUtils.isNotBlank(brandIdHSSFCell.getStringCellValue())) {
// String value = brandIdHSSFCell.getStringCellValue();
// prp.setSecondCode(value);
// }
// }
// if (i == 53) {//包装数量
// brandIdHSSFCell.setCellType(CellType.STRING);
// if (StringUtils.isNotBlank(brandIdHSSFCell.getStringCellValue())) {
// String value = brandIdHSSFCell.getStringCellValue();
// prp.setPackageNumber(value);
// }
// }
// if (i == 53) {//包内数量 对应采购订单的规格
// brandIdHSSFCell.setCellType(CellType.STRING);
// if (StringUtils.isNotBlank(brandIdHSSFCell.getStringCellValue())) {
// String value= brandIdHSSFCell.getStringCellValue();
// prp.setPackageNumber(value);
// prp.setPackageInsideNumber(value);
// BigDecimal v3 = new BigDecimal(value);//包内数量 规格
// String packagePrice = prp.getPackagePrice();//包装价格
// BigDecimal v4 = new BigDecimal(packagePrice);
// BigDecimal divide = v4.divide(v3, 2,BigDecimal.ROUND_HALF_UP);//单价
// String number = prp.getNumber();//数量
// BigDecimal v5 = new BigDecimal(number);
// BigDecimal v6 = divide .multiply( v5);//订货总金额
// String packageInsideNumber = prp.getPackageInsideNumber();
// BigDecimal v = new BigDecimal(packagePrice).divide(new BigDecimal(packageInsideNumber),2,BigDecimal.ROUND_HALF_UP);
// prp.setUnitPrice(v.toString());
// BigDecimal bigDecimal = new BigDecimal(hsje);
// BigDecimal v10 = bigDecimal.divide(new BigDecimal(value),2,BigDecimal.ROUND_HALF_UP);
// prp.setUnitPriceTax(v10.toString());
// prp.setTotalPrice(v6.toString());
// ProductInformationVo productInformationVo = productInformationService.selectByCode(prp.getProCode());
// productInformationVo.setNewestPurchasePrice(divide.toString());
// BigDecimal v122 = new BigDecimal(packagePrice).divide(new BigDecimal(prp.getPackageNumber()),2,BigDecimal.ROUND_HALF_UP);
// productInformationVo.setLatestPurchasePrice(v122.toString());
// ProductInformation pif=new ProductInformation();
// BeanUtil.copyProperties(productInformationVo,pif);
// productInformationService.updateById(pif);
// }
//
// if(StringUtils.isNotBlank(p.getCode())){
// p.setBrandSid("supervise");
// p.setBrand("监管");
// String categoryKey = prp.getCategoryKey();
// DictCommonDetailsVo category = dictCommonService.fetchByKeyAndType(categoryKey, "category");
// if(category==null){
// category=new DictCommonDetailsVo();
// category.setDictKey(categoryKey);
// category.setDictValue(prp.getCategory());
// category.setDictType("category");
// DictCommon dictCommon = new DictCommon();
// BeanUtil.copyProperties(category,dictCommon);
// dictCommonService.insert(dictCommon);
// }
// p.setCategoryKey(category.getDictKey());
// p.setCategory(category.getDictValue());
// productInformationService.insert(p);
// }
// }
// if (i == 4) {//包装规格
// brandIdHSSFCell.setCellType(CellType.STRING);
// if (StringUtils.isNotBlank(brandIdHSSFCell.getStringCellValue())) {
// String value= brandIdHSSFCell.getStringCellValue();
// prp.setPackageSpec(value);
// }
// }
// if (i == 11) {//单位
// brandIdHSSFCell.setCellType(CellType.STRING);
// if (StringUtils.isNotBlank(brandIdHSSFCell.getStringCellValue())) {
// String value= brandIdHSSFCell.getStringCellValue();
// prp.setUnit(value);
// p.setUnit(value);
// }
// }
// if (i == 34) {//包装价格(元)
// brandIdHSSFCell.setCellType(CellType.STRING);
// if (StringUtils.isNotBlank(brandIdHSSFCell.getStringCellValue())) {
// String value= brandIdHSSFCell.getStringCellValue();
// prp.setPackagePrice(value);
// // prp.setPackageInsideNumber(i1+"");
//
// }
// }
// if (i == 37) {//包合计(元)
// brandIdHSSFCell.setCellType(CellType.STRING);
// if (StringUtils.isNotBlank(brandIdHSSFCell.getStringCellValue())) {
// String value= brandIdHSSFCell.getStringCellValue();
// prp.setPackageTotalPrice(value);
// //latestPurchasePrice
// }
// }
//
// if (i == 54) {//零售金额
// brandIdHSSFCell.setCellType(CellType.STRING);
// if (StringUtils.isNotBlank(brandIdHSSFCell.getStringCellValue())) {
// String value= brandIdHSSFCell.getStringCellValue();
// prp.setRetailAmount(value);
// }
// }
// if (i == 51) {//品类
// brandIdHSSFCell.setCellType(CellType.STRING);
// if (StringUtils.isNotBlank(brandIdHSSFCell.getStringCellValue())) {
// String value= brandIdHSSFCell.getStringCellValue();
// String[] split = value.split("\\[");
// String v = split[0];//类别value
// String key=split[1].replace("]","");//key
// prp.setCategory(v);
// prp.setCategoryKey(key);
// }
// }
// if (i == 12) {//配货价格
// brandIdHSSFCell.setCellType(CellType.STRING);
// if (StringUtils.isNotBlank(brandIdHSSFCell.getStringCellValue())) {
// String value= brandIdHSSFCell.getStringCellValue();
// prp.setRetailAmount(value);
// }
// }
//
// if (i == 7) {//含税单价(元)
// brandIdHSSFCell.setCellType(CellType.STRING);
// if(StringUtils.isBlank(prp.getProCode())){
// continue;
// }
// if (StringUtils.isNotBlank(brandIdHSSFCell.getStringCellValue())) {
// hsje= brandIdHSSFCell.getStringCellValue();
// }
// }
// }else{
// System.err.println("rowNum="+rowNum+",i="+i+",value=null");
// }
// }
// if(StringUtils.isNotBlank(prp.getProCode())){
// prps.add(prp);
// }
// }
// }catch(Exception e){
// e.printStackTrace();
// System.err.println("i="+i+",value=null");
// }
//
// lisss.add(rowNum+"");
//
// }
// log.info("productInformation:{}", JSONObject.toJSONString(pr));
// ResultBean<String> objectResultBean=ResultBean.fireFail();
// SupplierInfoVo supplierInfoVo = supplierInfoService.selectByCodeForIndex(pr.getSupplierCode());
// if(supplierInfoVo==null){
// return objectResultBean.setMsg("供应商不存在!");
// }
// // List<Map<String,String>> suplierZtyz=baseMapper.suplierZtyz(pr.getSupplierCode()); 临时注释掉 2023-01-16
// List<Map<String,String>> suplierZtyz=baseMapper.suplierZtyz2(pr.getSupplierCode());
// if(suplierZtyz.size()>0){
// return objectResultBean.setMsg("供应商有在途商品!");
// }
// purchaseRequisitionService.insert(pr);
// for (PurchaseRequisitionPro p: prps){
// purchaseRequisitionProService.insert(p);
// /* String proCode = p.getProCode();*/
// /*int row=purchaseRequisitionProService.selectProdCodeTable(proCode);
// if(row==0){
// purchaseRequisitionProService.insertProdCodeTable(proCode);
// }*/
// }
// GdRescategoryProdService.resetCache();
// log.info("x:{}",JSON.toJSONString(lisss));
// String x1 = JSON.toJSONString(lisss2);
// log.info("x1:{}",JSON.toJSONString(lisss2));
// return objectResultBean.success().setData(pr.getCode());
// //return message;
// }
//
// private void setRow0(PurchaseRequisition pr, HSSFRow hssfRow, int i) {
// HSSFCell brandIdHSSFCell = hssfRow.getCell(i);
// if(brandIdHSSFCell!=null){
// if (i == 1) {//单号
// brandIdHSSFCell.setCellType(CellType.STRING);
// String code = brandIdHSSFCell.getStringCellValue();
// if(com.yxt.common.base.utils.StringUtils.isNotBlank(code)){
// PurchaseRequisition purchaseRequisition = purchaseRequisitionService.selectByCode(code);
// if(purchaseRequisition!=null){
// String newCode = purchaseRequisition.getNewCode();
// String[] split = newCode.split(",");
// split[split.length]=code;
// String str="";
// for(String s:split){
// str=str+","+s;
// }
// String substring = str.substring(1, str.length());
// purchaseRequisition.setNewCode(substring);
// purchaseRequisitionService.updateById(purchaseRequisition);
// }
// pr.setOldCode(code);
// }
// }
// }
// }
// private void setRow1(PurchaseRequisition pr, HSSFRow hssfRow, int i) {
// HSSFCell brandIdHSSFCell = hssfRow.getCell(i);
// if(brandIdHSSFCell!=null){
// if (i == 1) {//单号
// brandIdHSSFCell.setCellType(CellType.STRING);
// String code = brandIdHSSFCell.getStringCellValue();
// PurchaseRequisition purchaseRequisition = baseMapper.selectByCode(code);
// Map<String,Object> map=new HashMap<>();
// map.put("code",code);
// baseMapper.deleteByMap(map);
// purchaseRequisition=new PurchaseRequisition();
// Map<String,Object> map1=new HashMap<>();
// if(purchaseRequisition!=null){
// map1.put("mainSid",purchaseRequisition.getSid());
// purchaseRequisitionProService.deleteByMap(map1);
// }
//
// //ProductInformationVo productInformationVo = baseMapper.selectByCode(code);
// pr.setCode(code);
//
// }
// if (i == 3) {//填单人
// brandIdHSSFCell.setCellType(CellType.STRING);
// String value = brandIdHSSFCell.getStringCellValue();
// //ProductInformationVo productInformationVo = baseMapper.selectByCode(code);
// String[] split = value.split("\\[");
// String v = split[0];//类别value
// String key=split[1].replace("]","");//key
// pr.setBuyerName(v);
// pr.setBuyerCode(key);
// }
// if (i == 5) {//填单时间
// brandIdHSSFCell.setCellType(CellType.STRING);
// String value = brandIdHSSFCell.getStringCellValue();
// //ProductInformationVo productInformationVo = baseMapper.selectByCode(code);
// pr.setPurchaseDate(value);
// }
// }
// }
// private void setRow2(PurchaseRequisition pr, HSSFRow hssfRow, int i) {
// HSSFCell brandIdHSSFCell = hssfRow.getCell(i);
// if(brandIdHSSFCell!=null){
// if (i == 1) {//供货单位 供应商
// brandIdHSSFCell.setCellType(CellType.STRING);
// String value = brandIdHSSFCell.getStringCellValue();
// String[] split = value.split("\\[");
// String v = split[0];//类别value
// String key=split[1].replace("]","");//key
// SupplierInfoVo supplierInfoVo = supplierInfoService.selectByCodeForIndex(key);
// pr.setSupplierCode(supplierInfoVo.getCodeUnified());
// pr.setSupplierName(v);
//
// }
// if (i == 3) {//仓位
// brandIdHSSFCell.setCellType(CellType.STRING);
// String value = brandIdHSSFCell.getStringCellValue();
// String[] split = value.split("\\[");
// String v ="供应链仓";// split[0];//类别value
// String key="112";//split[1].replace("]","");//key
// WarehousePositionVo warehousePositionVo = warehousePositionService.selectByCode(key);
// if(warehousePositionVo==null){
// WarehousePosition warehousePosition=new WarehousePosition();
// warehousePosition.setName(v);
// warehousePosition.setCode(key);
// warehousePositionService.insert(warehousePosition);
// }
// pr.setWarehousePosition(v);
// pr.setWarehousePositionCode(key);
// }
// if (i == 5) {//到货日期
// brandIdHSSFCell.setCellType(CellType.STRING);
// String value = brandIdHSSFCell.getStringCellValue();
// //ProductInformationVo productInformationVo = baseMapper.selectByCode(code);
// pr.setArrivalDate(value);
// }
// }
// }
private void setRow3(PurchaseRequisition pr, HSSFRow hssfRow, int i) {
HSSFCell brandIdHSSFCell = hssfRow.getCell(i);
if (brandIdHSSFCell != null) {
if (i == 1) {//采购员
brandIdHSSFCell.setCellType(CellType.STRING);
String value = brandIdHSSFCell.getStringCellValue();
//ProductInformationVo productInformationVo = baseMapper.selectByCode(code);
private ReadListener<Map<Integer, String>> createReadListener(PurchaseRequisition pr, List<PurchaseRequisitionPro> proList) {
return new ReadListener<Map<Integer, String>>() {
private void full1(Map<Integer, String> map) {
String code = map.get(1);
pr.setCode(code);
pr.setPurchaseDate(map.get(5));
}
private void full2(Map<Integer, String> map) {
String str1 = map.get(1);
String[] arr1 = StrTool.splitBySquareBrackets(str1);
pr.setSupplierName(arr1[0]);
pr.setSupplierCode(arr1[1]);
pr.setWarehousePosition("供应链仓");
pr.setWarehousePositionCode("112");
pr.setArrivalDate(map.get(5));
}
private void full3(Map<Integer, String> map) {
String str1 = map.get(1);
String[] arr1 = StrTool.splitBySquareBrackets(str1);
pr.setBuyerName(arr1[0]);
pr.setBuyerCode(arr1[1]);
pr.setExpiryDate(map.get(5));
}
private void full4(Map<Integer, String> map) {
pr.setCompletionStatus(map.get(5));
pr.setCompletionStatusKey("0");//0未完成
}
private void addPro(Map<Integer, String> map) {
PurchaseRequisitionPro prp = new PurchaseRequisitionPro();
prp.setMainSid(pr.getSid());
prp.setPreqCode(pr.getCode());
String hsje = "";//含税金额
prp.setProCode(map.get(1));
// prp.setCategory(productInformation.getCategory());
// prp.setCategoryKey(productInformation.getCategoryKey());
// prp.setBrand(productInformation.getBrand());
// prp.setBrandCode(productInformation.getBrandSid());
prp.setContent("code");//规格型号
prp.setProName(map.get(2));
prp.setNumber(map.get(3));
prp.setPackageSpec(map.get(4));
prp.setPackageNumber(map.get(5));
hsje = map.get(7);
Double d = 0.0;
try {
d = Double.valueOf(hsje);
} catch (Exception e) {
e.printStackTrace();
}
prp.setTaxInclusiveAmount(d);
prp.setSecondCode(map.get(10));
prp.setUnit(map.get(11));
prp.setRetailAmount(map.get(12));
String s15 = map.get(15);
Double distributionAmount = 0.0;
try {
distributionAmount = Double.valueOf(s15);
} catch (Exception e) {
e.printStackTrace();
}
prp.setDistributionAmount(distributionAmount);
prp.setPackagePrice(map.get(34)); //包装价格(元)
prp.setPackageTotalPrice(map.get(37));//包合计(元)
String value = map.get(51);
String[] split = value.split("\\[");
String v = split[0];//类别value
String key = split[1].replace("]", "");//key
pr.setBuyerName(v);
pr.setBuyerCode(key);
pr.setLogisticsCompanyCode(key);
pr.setLogisticsCompanyName(v);
prp.setCategory(v);
prp.setCategoryKey(key);
prp.setPackageNumber(map.get(53));
prp.setPackageInsideNumber(map.get(53));
BigDecimal v3 = new BigDecimal(map.get(53));//包内数量 规格
String packagePrice = prp.getPackagePrice();//包装价格
BigDecimal v4 = new BigDecimal(packagePrice);
BigDecimal divide = v4.divide(v3, 2, BigDecimal.ROUND_HALF_UP);//单价
String number = prp.getNumber();//数量
BigDecimal v5 = new BigDecimal(number);
BigDecimal v6 = divide.multiply(v5);//订货总金额
String packageInsideNumber = prp.getPackageInsideNumber();
BigDecimal vv = new BigDecimal(packagePrice).divide(new BigDecimal(packageInsideNumber), 2, BigDecimal.ROUND_HALF_UP);
prp.setUnitPrice(vv.toString());
BigDecimal bigDecimal = new BigDecimal(hsje);
BigDecimal v10 = bigDecimal.divide(new BigDecimal(map.get(53)), 2, BigDecimal.ROUND_HALF_UP);
prp.setUnitPriceTax(v10.toString());
prp.setTotalPrice(v6.toString());
prp.setRetailAmount(map.get(54));
proList.add(prp);
}
if (i == 5) {//单据到效期
brandIdHSSFCell.setCellType(CellType.STRING);
String value = brandIdHSSFCell.getStringCellValue();
//ProductInformationVo productInformationVo = baseMapper.selectByCode(code);
pr.setExpiryDate(value);
@Override
public void invoke(Map<Integer, String> map, AnalysisContext analysisContext) {
ReadRowHolder readRowHolder = analysisContext.readRowHolder();
int rowIndex = readRowHolder.getRowIndex();
if (1 == rowIndex) {
full1(map);
}
if (2 == rowIndex) {
full2(map);
}
if (3 == rowIndex) {
full3(map);
}
if (4 == rowIndex) {
full4(map);
}
if (rowIndex > 6)
addPro(map);
}
}
}
private void setRow4(PurchaseRequisition pr, HSSFRow hssfRow, int i) {
HSSFCell brandIdHSSFCell = hssfRow.getCell(i);
if (brandIdHSSFCell != null) {
if (i == 5) {//完成状态
brandIdHSSFCell.setCellType(CellType.STRING);
String value = brandIdHSSFCell.getStringCellValue();
//ProductInformationVo productInformationVo = baseMapper.selectByCode(code);
pr.setCompletionStatus(value);
pr.setCompletionStatusKey("0");//0未完成
@Override
public void doAfterAllAnalysed(AnalysisContext analysisContext) {
}
}
};
}
public void updateOnlyCodeBySid(String sid, String codeUnified) {
UpdateWrapper<PurchaseRequisition> uw = new UpdateWrapper<>();
uw.set("supplierOnlyCode", codeUnified);
uw.eq("sid", sid);
this.update(uw);
}
private void createRow3(HSSFSheet sheet, int rownum, String[] col1, HSSFCellStyle style) {
//声明列对象
HSSFCell cell = null;
//创建标题
HSSFRow row2 = sheet.createRow(rownum);
for (int i = 0; i < col1.length; i++) {
cell = row2.createCell(i);
cell.setCellValue(col1[i]);
cell.setCellStyle(style);
}
public double amountOfSupplier(String supplierOnlyCode) {
return baseMapper.amountBySupplierOnlyCode(supplierOnlyCode);
}
public ResultBean<String> checkCodeByFileName(String filename) {
ResultBean rb = ResultBean.fireFail();
if (StringUtils.isBlank(filename))
return rb.setMsg("文件名不可为空");
if (filename.length() < 15)
return rb.setMsg("文件名格式错误");
String code = filename.substring(0, 14);
PurchaseRequisition purchaseRequisition = fetchByCode(code);
if (purchaseRequisition == null)
return rb.success().setData("nothas");
return rb.success().setData("hased");
public void updatePurchaseStateSucess(String sid) {
UpdateWrapper<PurchaseRequisition> uw = new UpdateWrapper<>();
uw.set("purchaseState", "1");
uw.eq("sid", sid);
this.update(uw);
}
public PurchaseRequisition fetchByCode(String code) {
public List<PurchaseRequisition> listOfCheck() {
List<PurchaseRequisition> list = listByState("1");
return list;
}
private List<PurchaseRequisition> listByState(String state) {
QueryWrapper<PurchaseRequisition> qw = new QueryWrapper<>();
qw.eq("code", code);
List<PurchaseRequisition> list = baseMapper.selectList(qw);
if (list == null || list.isEmpty())
return null;
return list.get(0);
qw.eq("state", state);
return baseMapper.selectList(qw);
}
}

32
yxt_supervise/supervise-customer/supervise-customer-biz/src/main/java/com/yxt/supervise/customer/biz/purchaserequisitionpro/PurchaseRequisitionProRest.java

@ -7,19 +7,13 @@ import com.yxt.common.core.vo.PagerVo;
import com.yxt.supervise.customer.api.purchaserequisition.PurchaseRequisitionExcelVo;
import com.yxt.supervise.customer.api.purchaserequisition.PurchaseRequisitionQuery;
import com.yxt.supervise.customer.api.purchaserequisition.PurchaseRequisitionVo;
import com.yxt.supervise.customer.api.purchaserequisitionpro.PurchaseRequisitionProExcelVo;
import com.yxt.supervise.customer.api.purchaserequisitionpro.PurchaseRequisitionProFeign;
import com.yxt.supervise.customer.api.purchaserequisitionpro.PurchaseRequisitionProQuery;
import com.yxt.supervise.customer.api.purchaserequisitionpro.PurchaseRequisitionProVo;
import com.yxt.supervise.customer.api.purchaserequisitionpro.*;
import com.yxt.supervise.customer.biz.purchaserequisition.PurchaseRequisitionService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import org.springframework.web.bind.annotation.*;
import javax.servlet.ServletOutputStream;
import javax.servlet.http.HttpServletResponse;
@ -37,6 +31,7 @@ import java.util.List;
public class PurchaseRequisitionProRest implements PurchaseRequisitionProFeign {
@Autowired
PurchaseRequisitionProService purchaseRequisitionProService;
@ApiOperation("根据条件分页查询数据的列表")
@PostMapping("/listPage")
public ResultBean<PagerVo<PurchaseRequisitionProVo>> listPage(@RequestBody PagerQuery<PurchaseRequisitionProQuery> pq) {
@ -44,15 +39,16 @@ public class PurchaseRequisitionProRest implements PurchaseRequisitionProFeign {
PagerVo<PurchaseRequisitionProVo> pv = purchaseRequisitionProService.listPageVo(pq);
return rb.success().setData(pv);
}
@PostMapping("/exportExcel")
@ApiOperation(value = "采购订单商品导出")
public void exportExcel(@RequestBody PagerQuery<PurchaseRequisitionProQuery> pq, HttpServletResponse response) throws IOException {
//得到所有要导出的数据
List<PurchaseRequisitionProExcelVo> excelVos = purchaseRequisitionProService.exportExcel(pq);
String fileName = "采购订单商品" + System.currentTimeMillis() + ".xlsx";
response.setContentType( "application/vnd.ms-excel");
response.setContentType("application/vnd.ms-excel");
response.setCharacterEncoding("utf8");
response.setHeader("Content-disposition","attachment;filename="+ fileName );
response.setHeader("Content-disposition", "attachment;filename=" + fileName);
// 这里 需要指定写用哪个class去读,然后写到第一个sheet,名字为模板 然后文件流会自动关闭
// 如果这里想使用03 则 传入excelType参数即可
ServletOutputStream outputStream = response.getOutputStream();
@ -60,4 +56,20 @@ public class PurchaseRequisitionProRest implements PurchaseRequisitionProFeign {
outputStream.flush();
outputStream.close();
}
@ApiOperation("通过订单sid查询订单内的商品列表")
@GetMapping("/listByMainSid/{mainsid}")
public ResultBean<List<PurchaseRequisitionPro>> listByMainSid(@PathVariable("mainsid") String mainsid) {
ResultBean rb = ResultBean.fireFail();
List<PurchaseRequisitionPro> list = purchaseRequisitionProService.listByMainSid(mainsid);
return rb.success().setData(list);
}
@ApiOperation("通过mainsid检查商品状态")
@GetMapping("/checkByMainSid/{mainsid}")
public ResultBean<List<PurchaseRequisitionPro>> checkByMainSid(@PathVariable("mainsid") String mainsid) {
ResultBean rb = ResultBean.fireFail();
List<PurchaseRequisitionProCheckVo> list = purchaseRequisitionProService.checkByMainSid(mainsid);
return rb.success().setData(list);
}
}

98
yxt_supervise/supervise-customer/supervise-customer-biz/src/main/java/com/yxt/supervise/customer/biz/purchaserequisitionpro/PurchaseRequisitionProService.java

@ -1,26 +1,43 @@
package com.yxt.supervise.customer.biz.purchaserequisitionpro;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.yxt.common.base.service.MybatisBaseService;
import com.yxt.common.base.utils.PagerUtil;
import com.yxt.common.core.query.PagerQuery;
import com.yxt.common.core.result.ResultBean;
import com.yxt.common.core.vo.PagerVo;
import com.yxt.supervise.customer.api.purchaserequisitionpro.PurchaseRequisitionPro;
import com.yxt.supervise.customer.api.purchaserequisitionpro.PurchaseRequisitionProExcelVo;
import com.yxt.supervise.customer.api.purchaserequisitionpro.PurchaseRequisitionProQuery;
import com.yxt.supervise.customer.api.purchaserequisitionpro.PurchaseRequisitionProVo;
import com.yxt.supervise.customer.api.productinformation.ProductInformation;
import com.yxt.supervise.customer.api.purchaserequisitionpro.*;
import com.yxt.supervise.customer.api.restrictedbrand.RestrictedBrand;
import com.yxt.supervise.customer.api.restrictedcategory.RestrictedCategory;
import com.yxt.supervise.customer.biz.productinformation.ProductInformationService;
import com.yxt.supervise.customer.biz.restrictedbrand.RestrictedBrandService;
import com.yxt.supervise.customer.biz.restrictedcategory.RestrictedCategoryService;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
/**
* @author wangpengfei
* @date 2023/3/30 15:49
*/
@Service
public class PurchaseRequisitionProService extends MybatisBaseService<PurchaseRequisitionProMapper,PurchaseRequisitionPro> {
public class PurchaseRequisitionProService extends MybatisBaseService<PurchaseRequisitionProMapper, PurchaseRequisitionPro> {
@Autowired
private ProductInformationService productInformationService;
@Autowired
private RestrictedCategoryService restrictedCategoryService;
@Autowired
private RestrictedBrandService restrictedBrandService;
public PagerVo<PurchaseRequisitionProVo> listPageVo(PagerQuery<PurchaseRequisitionProQuery> pq) {
PurchaseRequisitionProQuery query = pq.getParams();
QueryWrapper<PurchaseRequisitionPro> qw = new QueryWrapper<>();
@ -55,6 +72,7 @@ public class PurchaseRequisitionProService extends MybatisBaseService<PurchaseRe
PagerVo<PurchaseRequisitionProVo> p = PagerUtil.pageToVo(pagging, null);
return p;
}
public List<PurchaseRequisitionProExcelVo> exportExcel(PagerQuery<PurchaseRequisitionProQuery> pq) {
PurchaseRequisitionProQuery query = pq.getParams();
QueryWrapper<PurchaseRequisitionPro> qw = new QueryWrapper<>();
@ -87,4 +105,74 @@ public class PurchaseRequisitionProService extends MybatisBaseService<PurchaseRe
List<PurchaseRequisitionProExcelVo> pagging = baseMapper.exportExcel(qw);
return pagging;
}
public void deletebyMainSid(String mainSid) {
Map<String, Object> map = new HashMap<>();
map.put("mainSid", mainSid);
baseMapper.deleteByMap(map);
}
public List<PurchaseRequisitionPro> listByMainSid(String mainsid) {
QueryWrapper<PurchaseRequisitionPro> qw = new QueryWrapper<>();
qw.eq("mainSid", mainsid);
return baseMapper.selectList(qw);
}
public List<PurchaseRequisitionProCheckVo> checkByMainSid(String mainsid) {
List<PurchaseRequisitionProCheckVo> voList = new ArrayList<>();
List<PurchaseRequisitionPro> prolist = this.listByMainSid(mainsid);
for (PurchaseRequisitionPro pro : prolist) {
String proCode = pro.getProCode();
String proName = pro.getProName();
String mainSid = pro.getMainSid();
String preqCode = pro.getPreqCode();
ProductInformation pi = productInformationService.fetchByCode(proCode);
if (pi == null) {
PurchaseRequisitionProCheckVo vo = new PurchaseRequisitionProCheckVo(mainSid, preqCode, proCode, proName, 1);
vo.setMsg("商品档案无此商品");
voList.add(vo);
continue;
}
String brand = pi.getBrand();
String brandSid = pi.getBrandSid();
String category = pi.getCategory();
String categoryKey = pi.getCategoryKey();
RestrictedBrand rb = restrictedBrandService.fetchByCode(brandSid);
if (rb == null) {
PurchaseRequisitionProCheckVo vo = new PurchaseRequisitionProCheckVo(mainSid, preqCode, proCode, proName, 2);
vo.setBrandCode(brandSid);
vo.setBrandName(brand);
vo.setCategoryCode(categoryKey);
vo.setCategoryName(category);
vo.setMsg("品牌【" + brand + "】不属于监管品牌");
voList.add(vo);
}
RestrictedCategory rc = restrictedCategoryService.fetchByCode(categoryKey);
if (rc == null) {
PurchaseRequisitionProCheckVo vo = new PurchaseRequisitionProCheckVo(mainSid, preqCode, proCode, proName, 3);
vo.setBrandCode(brandSid);
vo.setBrandName(brand);
vo.setCategoryCode(categoryKey);
vo.setCategoryName(category);
vo.setMsg("品类【" + category + "】不属于监管品类");
voList.add(vo);
}
String brandCode = pro.getBrandCode();
if (StringUtils.isBlank(brandCode)) {
this.updateBrandCateBySid(pro.getSid(), brandSid, brand, categoryKey, category);
}
}
return voList;
}
private void updateBrandCateBySid(String sid, String brandSid, String brand, String categoryKey, String category) {
UpdateWrapper<PurchaseRequisitionPro> uw = new UpdateWrapper<>();
uw.set("brandCode", brandSid);
uw.set("brand", brand);
uw.set("categoryKey", categoryKey);
uw.set("category", category);
uw.eq("sid", sid);
this.update(uw);
}
}

10
yxt_supervise/supervise-customer/supervise-customer-biz/src/main/java/com/yxt/supervise/customer/biz/restrictedbrand/RestrictedBrandService.java

@ -181,4 +181,14 @@ public class RestrictedBrandService extends MybatisBaseService<RestrictedBrandMa
public RestrictedBrand selectByBrands(String brandCode) {
return baseMapper.selectByBrands(brandCode);
}
public RestrictedBrand fetchByCode(String code) {
QueryWrapper<RestrictedBrand> qw = new QueryWrapper<>();
qw.eq("code", code);
List<RestrictedBrand> list = baseMapper.selectList(qw);
if (list == null || list.isEmpty())
return null;
return list.get(0);
}
}

23
yxt_supervise/supervise-customer/supervise-customer-biz/src/main/java/com/yxt/supervise/customer/biz/restrictedcategory/RestrictedCategoryService.java

@ -164,13 +164,13 @@ public class RestrictedCategoryService extends MybatisBaseService<RestrictedCate
pr.setCategorys(value);
}
}
/*if (i == 2) {//名称
brandIdHSSFCell.setCellType(CellType.STRING);
if (StringUtils.isNotBlank(brandIdHSSFCell.getStringCellValue())) {
String value = brandIdHSSFCell.getStringCellValue();
pr.setBrands(value);
}
}*/
/*if (i == 2) {//名称
brandIdHSSFCell.setCellType(CellType.STRING);
if (StringUtils.isNotBlank(brandIdHSSFCell.getStringCellValue())) {
String value = brandIdHSSFCell.getStringCellValue();
pr.setBrands(value);
}
}*/
} else {
System.err.println("rowNum=" + rowNum + ",i=" + i + ",value=null");
}
@ -192,6 +192,15 @@ public class RestrictedCategoryService extends MybatisBaseService<RestrictedCate
//return message;
}
public RestrictedCategory fetchByCode(String categoryKey) {
QueryWrapper<RestrictedCategory> qw = new QueryWrapper<>();
qw.eq("categoryKey", categoryKey);
List<RestrictedCategory> list = baseMapper.selectList(qw);
if (list == null || list.isEmpty())
return null;
return list.get(0);
}
/* public Map<String, String> limitJudgement(String categoryKey, String brandCode) {
Map<String, String> result = new HashMap<>();
RestrictedCategory r = baseMapper.selectByCategorys(categoryKey);

499
yxt_supervise/supervise-customer/supervise-customer-biz/src/main/java/com/yxt/supervise/customer/biz/supplierbankinfo/SupplierBankInfoService.java

@ -33,12 +33,17 @@ import com.yxt.common.base.utils.PagerUtil;
import com.yxt.common.core.query.PagerQuery;
import com.yxt.common.core.result.ResultBean;
import com.yxt.common.core.vo.PagerVo;
import com.yxt.supervise.customer.api.purchaserequisition.PurchaseRequisition;
import com.yxt.supervise.customer.api.purchaserequisitionpro.InTransitCheckVo;
import com.yxt.supervise.customer.api.supplierbankinfo.*;
import com.yxt.supervise.customer.api.suppliercontractinfo.SupplierContractInfoDto;
import com.yxt.supervise.customer.api.supplierindex.SupplierIndexQuery;
import com.yxt.supervise.customer.api.supplierindex.SupplierIndex;
import com.yxt.supervise.customer.biz.gdinstorage.GdInstorageService;
import com.yxt.supervise.customer.biz.purchaserequisition.PurchaseRequisitionService;
import com.yxt.supervise.customer.biz.suppliercontractinfo.SupplierContractInfoService;
import com.yxt.supervise.customer.biz.supplierindex.SupplierIndexService;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import javax.annotation.Resource;
@ -59,184 +64,324 @@ import java.util.*;
*/
@Service
public class SupplierBankInfoService extends MybatisBaseService<SupplierBankInfoMapper, SupplierBankInfo> {
@Resource
private SupplierContractInfoService supplierContractInfoService;
@Resource
private SupplierIndexService supplierIndexService;
private QueryWrapper<SupplierBankInfo> createQueryWrapper(SupplierBankInfoQuery query) {
// todo: 这里根据具体业务调整查询条件
// 多字段Like示例:qw.and(wrapper -> wrapper.like("name", query.getName()).or().like("remark", query.getName()));
QueryWrapper<SupplierBankInfo> qw = new QueryWrapper<>();
if (StringUtils.isNotBlank(query.getCodeUnified())) {
qw.like("codeUnified", query.getCodeUnified());
}
if (StringUtils.isNotBlank(query.getName())) {
qw.like("name", query.getName());
}
if (StringUtils.isNotBlank(query.getContacts())) {
qw.like("contacts", query.getContacts());
}
if (StringUtils.isNotBlank(query.getLegalRepresentative())) {
qw.like("legalRepresentative", query.getLegalRepresentative());
}
if (StringUtils.isNotBlank(query.getBusinessLicenseNo())) {
qw.like("businessLicenseNo", query.getBusinessLicenseNo());
}if (StringUtils.isNotBlank(query.getBankAccountNumber())) {
qw.like("bankAccountNumber", query.getBankAccountNumber());
}
return qw;
}
public PagerVo<SupplierBankInfoVo> listPageVo(PagerQuery<SupplierBankInfoQuery> pq) {
SupplierBankInfoQuery query = pq.getParams();
QueryWrapper<SupplierBankInfo> qw = createQueryWrapper(query);
SupplierBankInfoQuery params = pq.getParams();
String name = params.getName();
if(StringUtils.isNotBlank(name)){
qw.like("i.name",name);
}
IPage<SupplierBankInfo> page = PagerUtil.queryToPage(pq);
IPage<SupplierBankInfoVo> pagging = baseMapper.selectPageVo(page, qw);
PagerVo<SupplierBankInfoVo> p = PagerUtil.pageToVo(pagging, null);
return p;
}
public void saveOrUpdateDto(SupplierBankInfoDto dto){
@Resource
private SupplierContractInfoService supplierContractInfoService;
@Resource
private SupplierIndexService supplierIndexService;
@Autowired
private PurchaseRequisitionService purchaseRequisitionService;
@Autowired
private GdInstorageService gdInstorageService;
private QueryWrapper<SupplierBankInfo> createQueryWrapper(SupplierBankInfoQuery query) {
// todo: 这里根据具体业务调整查询条件
// 多字段Like示例:qw.and(wrapper -> wrapper.like("name", query.getName()).or().like("remark", query.getName()));
QueryWrapper<SupplierBankInfo> qw = new QueryWrapper<>();
if (StringUtils.isNotBlank(query.getCodeUnified())) {
qw.like("codeUnified", query.getCodeUnified());
}
if (StringUtils.isNotBlank(query.getName())) {
qw.like("name", query.getName());
}
if (StringUtils.isNotBlank(query.getContacts())) {
qw.like("contacts", query.getContacts());
}
if (StringUtils.isNotBlank(query.getLegalRepresentative())) {
qw.like("legalRepresentative", query.getLegalRepresentative());
}
if (StringUtils.isNotBlank(query.getBusinessLicenseNo())) {
qw.like("businessLicenseNo", query.getBusinessLicenseNo());
}
if (StringUtils.isNotBlank(query.getBankAccountNumber())) {
qw.like("bankAccountNumber", query.getBankAccountNumber());
}
return qw;
}
public PagerVo<SupplierBankInfoVo> listPageVo(PagerQuery<SupplierBankInfoQuery> pq) {
SupplierBankInfoQuery query = pq.getParams();
QueryWrapper<SupplierBankInfo> qw = createQueryWrapper(query);
SupplierBankInfoQuery params = pq.getParams();
String name = params.getName();
if (StringUtils.isNotBlank(name)) {
qw.like("i.name", name);
}
IPage<SupplierBankInfo> page = PagerUtil.queryToPage(pq);
IPage<SupplierBankInfoVo> pagging = baseMapper.selectPageVo(page, qw);
PagerVo<SupplierBankInfoVo> p = PagerUtil.pageToVo(pagging, null);
return p;
}
public void saveOrUpdateDto(SupplierBankInfoDto dto) {
String dtoSid = dto.getSid();
if (StringUtils.isBlank(dtoSid)) {
if (StringUtils.isBlank(dtoSid)) {
this.insertByDto(dto);
return;
}
this.updateByDto(dto);
}
public void insertByDto(SupplierBankInfoDto dto){
SupplierBankInfo entity = new SupplierBankInfo();
BeanUtil.copyProperties(dto, entity, "id", "sid");
baseMapper.insert(entity);
List<String> codeIndex = dto.getCodeIndex();
baseMapper.insertSUpplierIndex(entity.getName(),entity.getCodeUnified(),entity.getSid(),entity.getCodeUnified());
for (String index : codeIndex) {
if (!index.equals(entity.getCodeUnified())){
baseMapper.insertSUpplierIndex(entity.getName(),entity.getCodeUnified(),entity.getSid(),index);
}
}
baseMapper.deleteSupplierFiles(entity.getSid(),"1");
String[] businessLicenseFiles = dto.getBusinessLicenseFiles();
if(businessLicenseFiles!=null){
List<Map<String,String>> maps=new ArrayList<>();
for(String s:businessLicenseFiles){
Map<String,String>m=new HashMap<>();
m.put("mainSid",entity.getSid());
m.put("url",s);
m.put("type","1");
m.put("sid", UUID.randomUUID().toString());
maps.add(m);
}
if(maps.size()>0){
baseMapper.insertSupplierFiles(maps);
}
}
baseMapper.deleteSupplierFiles(entity.getSid(),"2");
String[] contractFiles = dto.getContractInfo().getContractFiles();
if(contractFiles!=null){
List<Map<String,String>> maps=new ArrayList<>();
for(String s:contractFiles){
Map<String,String>m=new HashMap<>();
m.put("mainSid",entity.getSid());
m.put("url",s);
m.put("type","2");
m.put("sid", UUID.randomUUID().toString());
maps.add(m);
}
if(maps.size()>0){
baseMapper.insertSupplierFiles(maps);
}
}
SupplierContractInfoDto supplierContractInfoDto = dto.getContractInfo();
supplierContractInfoDto.setSupplierSid(entity.getSid());
supplierContractInfoService.saveOrUpdateDto(supplierContractInfoDto);
}
public void updateByDto(SupplierBankInfoDto dto){
String dtoSid = dto.getSid();
return;
}
this.updateByDto(dto);
}
public void insertByDto(SupplierBankInfoDto dto) {
SupplierBankInfo entity = new SupplierBankInfo();
BeanUtil.copyProperties(dto, entity, "id", "sid");
baseMapper.insert(entity);
List<String> codeIndex = dto.getCodeIndex();
baseMapper.insertSUpplierIndex(entity.getName(), entity.getCodeUnified(), entity.getSid(), entity.getCodeUnified());
for (String index : codeIndex) {
if (!index.equals(entity.getCodeUnified())) {
baseMapper.insertSUpplierIndex(entity.getName(), entity.getCodeUnified(), entity.getSid(), index);
}
}
baseMapper.deleteSupplierFiles(entity.getSid(), "1");
String[] businessLicenseFiles = dto.getBusinessLicenseFiles();
if (businessLicenseFiles != null) {
List<Map<String, String>> maps = new ArrayList<>();
for (String s : businessLicenseFiles) {
Map<String, String> m = new HashMap<>();
m.put("mainSid", entity.getSid());
m.put("url", s);
m.put("type", "1");
m.put("sid", UUID.randomUUID().toString());
maps.add(m);
}
if (maps.size() > 0) {
baseMapper.insertSupplierFiles(maps);
}
}
baseMapper.deleteSupplierFiles(entity.getSid(), "2");
String[] contractFiles = dto.getContractInfo().getContractFiles();
if (contractFiles != null) {
List<Map<String, String>> maps = new ArrayList<>();
for (String s : contractFiles) {
Map<String, String> m = new HashMap<>();
m.put("mainSid", entity.getSid());
m.put("url", s);
m.put("type", "2");
m.put("sid", UUID.randomUUID().toString());
maps.add(m);
}
if (maps.size() > 0) {
baseMapper.insertSupplierFiles(maps);
}
}
SupplierContractInfoDto supplierContractInfoDto = dto.getContractInfo();
supplierContractInfoDto.setSupplierSid(entity.getSid());
supplierContractInfoService.saveOrUpdateDto(supplierContractInfoDto);
}
public void updateByDto(SupplierBankInfoDto dto) {
String dtoSid = dto.getSid();
if (StringUtils.isBlank(dtoSid)) {
return;
}
SupplierBankInfo entity = baseMapper.selectBySid(dtoSid);
BeanUtil.copyProperties(dto, entity, "id", "sid");
baseMapper.updateById(entity);
supplierIndexService.delByMainSid(dtoSid);
List<String> codeIndex = dto.getCodeIndex();
baseMapper.insertSUpplierIndex(entity.getName(),entity.getCodeUnified(),dtoSid,entity.getCodeUnified());
for (String index : codeIndex) {
if (!index.equals(entity.getCodeUnified())){
baseMapper.insertSUpplierIndex(entity.getName(),entity.getCodeUnified(),entity.getSid(),index);
}
}
baseMapper.deleteSupplierFiles(entity.getSid(),"1");
String[] businessLicenseFiles = dto.getBusinessLicenseFiles();
if(businessLicenseFiles!=null){
List<Map<String,String>> maps=new ArrayList<>();
for(String s:businessLicenseFiles){
Map<String,String>m=new HashMap<>();
m.put("mainSid",entity.getSid());
m.put("url",s);
m.put("type","1");
m.put("sid", UUID.randomUUID().toString());
maps.add(m);
}
baseMapper.insertSupplierFiles(maps);
}
baseMapper.deleteSupplierFiles(entity.getSid(),"2");
String[] contractFiles = dto.getContractInfo().getContractFiles();
if(contractFiles!=null){
List<Map<String,String>> maps=new ArrayList<>();
for(String s:contractFiles){
Map<String,String>m=new HashMap<>();
m.put("mainSid",entity.getSid());
m.put("url",s);
m.put("type","2");
m.put("sid", UUID.randomUUID().toString());
maps.add(m);
}
baseMapper.insertSupplierFiles(maps);
}
SupplierContractInfoDto supplierContractInfoDto = dto.getContractInfo();
supplierContractInfoDto.setSupplierSid(entity.getSid());
supplierContractInfoService.saveOrUpdateDto(supplierContractInfoDto);
}
public ResultBean delBySids(String sids) {
ResultBean<Object> resultBean = ResultBean.fireFail();
String[] split = sids.split(",");
int i= baseMapper.delBySids(split);
return resultBean.success().setData("1");
}
public SupplierBankInfoDetailsVo fetchDetailsVoBySid(String sid){
SupplierBankInfo entity = baseMapper.selectBySid(sid);
SupplierBankInfoDetailsVo vo = new SupplierBankInfoDetailsVo();
SupplierContractInfoDto contractInfo = new SupplierContractInfoDto();
BeanUtil.copyProperties(entity, vo);
String s1=baseMapper.selectSupplierFiles(sid,"1");
if(StringUtils.isNotBlank(s1)){
vo.setBusinessLicenseFiles(s1.split(","));
}else{
vo.setBusinessLicenseFiles(new String[]{});
}
String s2=baseMapper.selectSupplierFiles(sid,"2");
if(StringUtils.isNotBlank(s2)){
contractInfo.setContractFiles(s2.split(","));
contractInfo.setContractFiles(s2.split(","));
}else{
contractInfo.setContractFiles(new String[]{});
}
vo.setContractInfo(contractInfo);
return vo;
}
public SupplierBankInfo selectByCode(String codeUnified) {
return baseMapper.selectByCode(codeUnified);
}
}
SupplierBankInfo entity = baseMapper.selectBySid(dtoSid);
BeanUtil.copyProperties(dto, entity, "id", "sid");
baseMapper.updateById(entity);
supplierIndexService.delByMainSid(dtoSid);
List<String> codeIndex = dto.getCodeIndex();
baseMapper.insertSUpplierIndex(entity.getName(), entity.getCodeUnified(), dtoSid, entity.getCodeUnified());
for (String index : codeIndex) {
if (!index.equals(entity.getCodeUnified())) {
baseMapper.insertSUpplierIndex(entity.getName(), entity.getCodeUnified(), entity.getSid(), index);
}
}
baseMapper.deleteSupplierFiles(entity.getSid(), "1");
String[] businessLicenseFiles = dto.getBusinessLicenseFiles();
if (businessLicenseFiles != null) {
List<Map<String, String>> maps = new ArrayList<>();
for (String s : businessLicenseFiles) {
Map<String, String> m = new HashMap<>();
m.put("mainSid", entity.getSid());
m.put("url", s);
m.put("type", "1");
m.put("sid", UUID.randomUUID().toString());
maps.add(m);
}
baseMapper.insertSupplierFiles(maps);
}
baseMapper.deleteSupplierFiles(entity.getSid(), "2");
String[] contractFiles = dto.getContractInfo().getContractFiles();
if (contractFiles != null) {
List<Map<String, String>> maps = new ArrayList<>();
for (String s : contractFiles) {
Map<String, String> m = new HashMap<>();
m.put("mainSid", entity.getSid());
m.put("url", s);
m.put("type", "2");
m.put("sid", UUID.randomUUID().toString());
maps.add(m);
}
baseMapper.insertSupplierFiles(maps);
}
SupplierContractInfoDto supplierContractInfoDto = dto.getContractInfo();
supplierContractInfoDto.setSupplierSid(entity.getSid());
supplierContractInfoService.saveOrUpdateDto(supplierContractInfoDto);
}
public ResultBean delBySids(String sids) {
ResultBean<Object> resultBean = ResultBean.fireFail();
String[] split = sids.split(",");
int i = baseMapper.delBySids(split);
return resultBean.success().setData("1");
}
public SupplierBankInfoDetailsVo fetchDetailsVoBySid(String sid) {
SupplierBankInfo entity = baseMapper.selectBySid(sid);
SupplierBankInfoDetailsVo vo = new SupplierBankInfoDetailsVo();
SupplierContractInfoDto contractInfo = new SupplierContractInfoDto();
BeanUtil.copyProperties(entity, vo);
String s1 = baseMapper.selectSupplierFiles(sid, "1");
if (StringUtils.isNotBlank(s1)) {
vo.setBusinessLicenseFiles(s1.split(","));
} else {
vo.setBusinessLicenseFiles(new String[]{});
}
String s2 = baseMapper.selectSupplierFiles(sid, "2");
if (StringUtils.isNotBlank(s2)) {
contractInfo.setContractFiles(s2.split(","));
contractInfo.setContractFiles(s2.split(","));
} else {
contractInfo.setContractFiles(new String[]{});
}
vo.setContractInfo(contractInfo);
return vo;
}
public SupplierBankInfo selectByCode(String codeUnified) {
return baseMapper.selectByCode(codeUnified);
}
public List<PurchaseRequisitionCheckVo> checkPurchaseRequisition(String purchaseRequisitionSid) {
List<PurchaseRequisitionCheckVo> list = checkSupplierByPRSid(purchaseRequisitionSid);
if (list.isEmpty()) {
PurchaseRequisition pr = purchaseRequisitionService.fetchBySid(purchaseRequisitionSid);
if (pr == null) {
PurchaseRequisitionCheckVo vo = new PurchaseRequisitionCheckVo(purchaseRequisitionSid, "", 5);
vo.setMsg("没有对应采购订单");
list.add(vo);
return list;
}
InTransitCheckVo ivo = checkInTransitByUniCode(pr.getSupplierOnlyCode());
if (ivo.getHasInTransit()) {
PurchaseRequisitionCheckVo vo = new PurchaseRequisitionCheckVo(purchaseRequisitionSid, "", 3);
vo.setSupplierCode(pr.getSupplierCode());
vo.setSupplierName(pr.getSupplierName());
vo.setSupplierCodeUnified(pr.getSupplierOnlyCode());
vo.setMsg("供应商[" + pr.getSupplierName() + "]有在途货值");
list.add(vo);
}
}
return list;
}
public List<PurchaseRequisitionCheckVo> checkSupplierByPRSid(String purchaseRequisitionSid) {
List<PurchaseRequisitionCheckVo> list = new ArrayList<>();
PurchaseRequisition pr = purchaseRequisitionService.fetchBySid(purchaseRequisitionSid);
if (pr == null) {
PurchaseRequisitionCheckVo vo = new PurchaseRequisitionCheckVo(purchaseRequisitionSid, "", 5);
vo.setMsg("没有对应采购订单");
list.add(vo);
return list;
}
String prCode = pr.getCode();
String prSid = pr.getSid();
String supplierCode = pr.getSupplierCode();
String supplierName = pr.getSupplierName();
String supplierOnlyCode = pr.getSupplierOnlyCode();
List<SupplierIndex> silist = supplierIndexService.listByCode(supplierCode);
if (silist != null && silist.size() > 1) {
PurchaseRequisitionCheckVo vo = new PurchaseRequisitionCheckVo(prSid, prCode, 4);
vo.setSupplierCode(supplierCode);
vo.setSupplierName(supplierName);
vo.setSupplierCodeUnified(supplierOnlyCode);
vo.setMsg("【" + supplierCode + "】在索引表中有重复值");
list.add(vo);
return list;
}
if (silist == null || silist.isEmpty()) {
SupplierBankInfo sbi = this.fetchByName(supplierName);
if (sbi == null) {
PurchaseRequisitionCheckVo vo = new PurchaseRequisitionCheckVo(prSid, prCode, 1);
vo.setSupplierCode(supplierCode);
vo.setSupplierName(supplierName);
vo.setSupplierCodeUnified(supplierOnlyCode);
vo.setMsg("没有该供应商信息");
list.add(vo);
} else {
String sbiCodeUnified = sbi.getCodeUnified();
String sbiSid = sbi.getSid();
String name = sbi.getName();
SupplierIndex sui = new SupplierIndex();
sui.setPSid(sbiSid);
sui.setCode(supplierCode);
sui.setName(supplierName);
sui.setCodeUnified(sbiCodeUnified);
sui.setNameUnified(name);
supplierIndexService.save(sui);
if (StringUtils.isBlank(supplierOnlyCode)) {
purchaseRequisitionService.updateOnlyCodeBySid(purchaseRequisitionSid, sbiCodeUnified);
}
Integer purchaseRequisition = sbi.getPurchaseRequisition();
Integer bankState = sbi.getBankState();
Integer lockingStatus = sbi.getLockingStatus();
if (purchaseRequisition != null && purchaseRequisition.equals(1) && bankState != null && bankState.equals(1) && lockingStatus != null && lockingStatus.equals(0))
return list;
PurchaseRequisitionCheckVo vo = new PurchaseRequisitionCheckVo(prSid, prCode, 6);
vo.setSupplierCode(supplierCode);
vo.setSupplierName(supplierName);
vo.setSupplierCodeUnified(supplierOnlyCode);
vo.setMsg("该供应商没有审核");
list.add(vo);
}
return list;
}
SupplierIndex si = silist.get(0);
SupplierBankInfo supplierBankInfo = this.fetchBySid(si.getPSid());
if (supplierBankInfo == null) {
PurchaseRequisitionCheckVo vo = new PurchaseRequisitionCheckVo(prSid, prCode, 2);
vo.setSupplierCode(supplierCode);
vo.setSupplierName(supplierName);
vo.setSupplierCodeUnified(supplierOnlyCode);
vo.setMsg("索引与供应商关联错误");
list.add(vo);
return list;
}
Integer purchaseRequisition = supplierBankInfo.getPurchaseRequisition();
Integer bankState = supplierBankInfo.getBankState();
Integer lockingStatus = supplierBankInfo.getLockingStatus();
if (purchaseRequisition != null && purchaseRequisition.equals(1) && bankState != null && bankState.equals(1) && lockingStatus != null && lockingStatus.equals(0))
return list;
PurchaseRequisitionCheckVo vo = new PurchaseRequisitionCheckVo(prSid, prCode, 6);
vo.setSupplierCode(supplierCode);
vo.setSupplierName(supplierName);
vo.setSupplierCodeUnified(supplierOnlyCode);
vo.setMsg("该供应商没有审核");
list.add(vo);
return list;
}
public SupplierBankInfo fetchByName(String supplierName) {
QueryWrapper<SupplierBankInfo> qw = new QueryWrapper<>();
qw.eq("name", supplierName);
List<SupplierBankInfo> list = baseMapper.selectList(qw);
if (list == null || list.isEmpty())
return null;
return list.get(0);
}
public InTransitCheckVo checkInTransitByUniCode(String supplierOnlyCode) {
InTransitCheckVo vo = new InTransitCheckVo(supplierOnlyCode);
vo.setOrderAmount(purchaseRequisitionService.amountOfSupplier(supplierOnlyCode));
vo.setInstorageAmount(gdInstorageService.amountOfSupplier(supplierOnlyCode));
return vo;
}
}

16
yxt_supervise/supervise-customer/supervise-customer-biz/src/main/java/com/yxt/supervise/customer/biz/supplierindex/SupplierIndexService.java

@ -4,7 +4,6 @@ import cn.hutool.core.bean.BeanUtil;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.yxt.common.base.service.MybatisBaseService;
import com.yxt.common.base.utils.PagerUtil;
import com.yxt.common.core.query.PagerQuery;
import com.yxt.common.core.vo.PagerVo;
@ -62,8 +61,8 @@ public class SupplierIndexService extends ServiceImpl<SupplierIndexMapper, Suppl
QueryWrapper<SupplierIndex> qw = new QueryWrapper<>();
SupplierIndexQuery params = pq.getParams();
String name = params.getName();
if(StringUtils.isNotBlank(name)){
qw.like("i.name",name);
if (StringUtils.isNotBlank(name)) {
qw.like("i.name", name);
}
IPage<SupplierIndex> page = PagerUtil.queryToPage(pq);
IPage<SupplierIndexVo> pagging = baseMapper.selectPageVo(page, qw);
@ -114,4 +113,15 @@ public class SupplierIndexService extends ServiceImpl<SupplierIndexMapper, Suppl
public void delByMainSid(String dtoSid) {
baseMapper.delByMainSid(dtoSid);
}
public SupplierIndex fetchByCode(String supplierCode) {
QueryWrapper<SupplierIndex> qw = new QueryWrapper<>();
qw.eq("code", supplierCode);
return baseMapper.selectOne(qw);
}
public List<SupplierIndex> listByCode(String supplierCode) {
QueryWrapper<SupplierIndex> qw = new QueryWrapper<>();
qw.eq("code", supplierCode);
return baseMapper.selectList(qw);
}
}

Loading…
Cancel
Save