Browse Source

2024-04-09

master
zelian_wu 2 years ago
parent
commit
7729654e78
  1. 40
      src/main/java/com/spring/modules/code/controller/CodeItemDefController.java
  2. 62
      src/main/java/com/spring/modules/code/controller/CodeItemValueController.java
  3. 119
      src/main/java/com/spring/modules/code/entity/CodeItemDef.java
  4. 29
      src/main/java/com/spring/modules/code/entity/CodeItemValue.java
  5. 9
      src/main/java/com/spring/modules/code/mapper/CodeItemDefMapper.java
  6. 9
      src/main/java/com/spring/modules/code/mapper/CodeItemValueMapper.java
  7. 18
      src/main/java/com/spring/modules/code/service/CodeItemDefService.java
  8. 22
      src/main/java/com/spring/modules/code/service/CodeItemValueService.java
  9. 85
      src/main/java/com/spring/modules/code/service/impl/CodeItemDefServiceImpl.java
  10. 88
      src/main/java/com/spring/modules/code/service/impl/CodeItemValueServiceImpl.java
  11. 20
      src/main/java/com/spring/modules/project/data/PlmProjectPartData.java
  12. 3
      src/main/resources/mapper/project/ProjectDao.xml
  13. 4
      src/main/resources/mapper/quotation/QuotationInformationMapper.xml

40
src/main/java/com/spring/modules/code/controller/CodeItemDefController.java

@ -0,0 +1,40 @@
package com.spring.modules.code.controller;
import com.spring.common.utils.R;
import com.spring.modules.code.entity.CodeItemDef;
import com.spring.modules.code.service.CodeItemDefService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
import java.util.List;
@RestController
@RequestMapping("/code/item")
public class CodeItemDefController {
@Autowired
private CodeItemDefService codeItemDefService;
@PostMapping("/list")
public R searchCodeItemDefs(@RequestBody CodeItemDef codeItemDef) {
List<CodeItemDef> codeItemDefs = codeItemDefService.searchCodeItemDefs(codeItemDef);
return R.ok().put("rows", codeItemDefs);
}
@PostMapping("/save/batch")
public R saveCodeItemDefs(@RequestBody List<CodeItemDef> codeItemDefs) {
codeItemDefService.saveCodeItemDefs(codeItemDefs);
return R.ok().put("msg","保存成功");
}
@PostMapping("/edit/batch")
public R editCodeItemDefs(@RequestBody List<CodeItemDef> codeItemDefs) {
codeItemDefService.editCodeItemDefs(codeItemDefs);
return R.ok().put("msg","修改成功");
}
@PostMapping("/remove/batch")
public R removeCodeItemDefs(@RequestBody List<CodeItemDef> codeItemDefs) {
codeItemDefService.removeCodeItemDefs(codeItemDefs);
return R.ok().put("msg","删除成功");
}
}

62
src/main/java/com/spring/modules/code/controller/CodeItemValueController.java

@ -0,0 +1,62 @@
package com.spring.modules.code.controller;
import com.spring.common.utils.R;
import com.spring.modules.code.entity.CodeItemValue;
import com.spring.modules.code.service.CodeItemValueService;
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 java.util.List;
@RestController
@RequestMapping("/code/value")
public class CodeItemValueController {
@Autowired
private CodeItemValueService codeItemValueService;
@PostMapping("/list")
public R searchCodeItemValueList(@RequestBody CodeItemValue codeItemValue) {
List<CodeItemValue> list = codeItemValueService.searchCodeItemValueList(codeItemValue);
return R.ok().put("rows", null);
}
@PostMapping("/save")
public R saveCodeItemValue(@RequestBody CodeItemValue codeItemValue) {
codeItemValueService.saveCodeItemValue(codeItemValue);
return R.ok();
}
@PostMapping("/save/batch")
public R saveCodeItemValueBatch(@RequestBody List<CodeItemValue> codeItemValueList) {
codeItemValueService.saveCodeItemValueBatch(codeItemValueList);
return R.ok();
}
@PostMapping("/remove")
public R removeCodeItemValue(@RequestBody CodeItemValue codeItemValue) {
codeItemValueService.removeCodeItemValue(codeItemValue);
return R.ok();
}
@PostMapping("/remove/batch")
public R removeCodeItemValueBatch(@RequestBody List<CodeItemValue> codeItemValueList) {
codeItemValueService.removeCodeItemValueBatch(codeItemValueList);
return R.ok();
}
@PostMapping("/edit")
public R updateCodeItemValue(@RequestBody CodeItemValue codeItemValue) {
codeItemValueService.updateCodeItemValue(codeItemValue);
return R.ok();
}
@PostMapping("/edit/batch")
public R updateCodeItemValueBatch(@RequestBody List<CodeItemValue> codeItemValueList) {
codeItemValueService.updateCodeItemValueBatch(codeItemValueList);
return R.ok();
}
}

119
src/main/java/com/spring/modules/code/entity/CodeItemDef.java

@ -0,0 +1,119 @@
package com.spring.modules.code.entity;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.Data;
@TableName("ItemDef")
@Data
public class CodeItemDef {
/**
* 工厂
*/
@TableField("site")
private String site;
/**
* 元素序号
*/
@TableField("item_no")
private Integer itemNo;
/**
* 排列次序号
*/
@TableField("seq_no")
private Integer seqNo;
/**
* 元素描述
*/
@TableField("item_desc")
private String itemDesc;
/**
* 编码位数
*/
@TableField("bits")
private Integer bits;
/**
* 前面是否增加分割号
*/
@TableField("postfix")
private String postfix;
/**
* 可选值随元素变化而变化
*/
@TableField("item_by_condition")
private String itemByCondition;
/**
* 是否是流水号
*/
@TableField("seq_flag")
private String seqFlag;
/**
* 元素输入类型
*/
@TableField("item_type")
private String itemType;
/**
* 流水号位数
*/
@TableField("seq_no_bits")
private Integer seqNoBits;
/**
* 是否参与编码
*/
@TableField("virtual_item")
private String virtualItem;
/**
* 流水号参数规则
*/
@TableField("seq_no_type")
private String seqNoType;
/**
* 值顺序号
*/
@TableField("value_seq_no")
private Integer valueSeqNo;
/**
* 固定值
*/
@TableField("fixed_value_flag")
private String fixedValueFlag;
/**
* 是否显示在描述中
*/
@TableField("show_in_desc")
private String showInDesc;
/**
* 元素描述是否显示在备注中
*/
@TableField("show_item_desc_in_desc")
private String showItemDescInDesc;
/**
* 是否显示在备注中
*/
@TableField("show_in_remark")
private String showInRemark;
/**
* 元素描述是否显示在备注中
*/
@TableField("show_item_desc_in_remark")
private String showItemDescInRemark;
}

29
src/main/java/com/spring/modules/code/entity/CodeItemValue.java

@ -0,0 +1,29 @@
package com.spring.modules.code.entity;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.Data;
@TableName("item_value")
@Data
public class CodeItemValue {
@TableField("site")
private String site;
@TableField("item_no")
private Integer itemNo;
@TableField("condition_id")
private Integer conditionId;
@TableField("value_no")
private String valueNo;
@TableField("item_value")
private String itemValue;
@TableField("value_item_no")
private String valueItemNo;
}

9
src/main/java/com/spring/modules/code/mapper/CodeItemDefMapper.java

@ -0,0 +1,9 @@
package com.spring.modules.code.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.spring.modules.code.entity.CodeItemDef;
import org.apache.ibatis.annotations.Mapper;
@Mapper
public interface CodeItemDefMapper extends BaseMapper<CodeItemDef> {
}

9
src/main/java/com/spring/modules/code/mapper/CodeItemValueMapper.java

@ -0,0 +1,9 @@
package com.spring.modules.code.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.spring.modules.code.entity.CodeItemValue;
import org.apache.ibatis.annotations.Mapper;
@Mapper
public interface CodeItemValueMapper extends BaseMapper<CodeItemValue> {
}

18
src/main/java/com/spring/modules/code/service/CodeItemDefService.java

@ -0,0 +1,18 @@
package com.spring.modules.code.service;
import com.baomidou.mybatisplus.extension.service.IService;
import com.spring.modules.code.entity.CodeItemDef;
import org.springframework.transaction.annotation.Transactional;
import java.util.List;
public interface CodeItemDefService extends IService<CodeItemDef> {
List<CodeItemDef> searchCodeItemDefs(CodeItemDef codeItemDef);
void saveCodeItemDefs(List<CodeItemDef> codeItemDefs);
void editCodeItemDefs(List<CodeItemDef> codeItemDefs);
void removeCodeItemDefs(List<CodeItemDef> codeItemDefs);
}

22
src/main/java/com/spring/modules/code/service/CodeItemValueService.java

@ -0,0 +1,22 @@
package com.spring.modules.code.service;
import com.baomidou.mybatisplus.extension.service.IService;
import com.spring.modules.code.entity.CodeItemValue;
import java.util.List;
public interface CodeItemValueService extends IService<CodeItemValue> {
List<CodeItemValue> searchCodeItemValueList(CodeItemValue codeItemValue);
void saveCodeItemValue(CodeItemValue codeItemValue);
void removeCodeItemValue(CodeItemValue codeItemValue);
void updateCodeItemValue(CodeItemValue codeItemValue);
void saveCodeItemValueBatch(List<CodeItemValue> codeItemValueList);
void removeCodeItemValueBatch(List<CodeItemValue> codeItemValueList);
void updateCodeItemValueBatch(List<CodeItemValue> codeItemValueList);
}

85
src/main/java/com/spring/modules/code/service/impl/CodeItemDefServiceImpl.java

@ -0,0 +1,85 @@
package com.spring.modules.code.service.impl;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.spring.modules.code.entity.CodeItemDef;
import com.spring.modules.code.entity.CodeItemValue;
import com.spring.modules.code.mapper.CodeItemDefMapper;
import com.spring.modules.code.service.CodeItemDefService;
import com.spring.modules.code.service.CodeItemValueService;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import org.springframework.util.StringUtils;
import java.util.List;
import java.util.Objects;
import java.util.stream.Collectors;
@Service
@Slf4j
public class CodeItemDefServiceImpl extends ServiceImpl<CodeItemDefMapper,CodeItemDef> implements CodeItemDefService {
@Autowired
private CodeItemValueService codeItemValueService;
@Override
public List<CodeItemDef> searchCodeItemDefs(CodeItemDef codeItemDef) {
LambdaQueryWrapper<CodeItemDef> wrapper = new LambdaQueryWrapper<>();
if (Objects.nonNull(codeItemDef.getSite()) && StringUtils.hasText(codeItemDef.getSite())){
wrapper.eq(CodeItemDef::getSite,codeItemDef.getSite());
}
if (Objects.nonNull(codeItemDef.getItemDesc()) && StringUtils.hasText(codeItemDef.getItemDesc())){
wrapper.like(CodeItemDef::getItemDesc,codeItemDef.getItemDesc());
}
wrapper.orderByAsc(CodeItemDef::getItemNo);
return list(wrapper);
}
@Override
@Transactional
public void saveCodeItemDefs(List<CodeItemDef> codeItemDefs) {
if (Objects.isNull(codeItemDefs) || codeItemDefs.isEmpty()){
return;
}
List<CodeItemDef> list = lambdaQuery().select(CodeItemDef::getItemNo).orderByDesc(CodeItemDef::getItemNo).list();
int maxItemNo = 0;
if (!list.isEmpty()){
maxItemNo = list.get(0).getItemNo();
}
for (CodeItemDef itemDef : codeItemDefs) {
itemDef.setItemNo(++maxItemNo);
}
saveBatch(codeItemDefs);
}
@Override
@Transactional
public void editCodeItemDefs(List<CodeItemDef> codeItemDefs) {
if (Objects.isNull(codeItemDefs) || codeItemDefs.isEmpty()){
return;
}
codeItemDefs.forEach(itemDef -> {
update(itemDef,new LambdaQueryWrapper<CodeItemDef>()
.eq(CodeItemDef::getSite,itemDef.getSite())
.eq(CodeItemDef::getItemNo,itemDef.getItemNo()));
});
}
@Override
@Transactional
public void removeCodeItemDefs(List<CodeItemDef> codeItemDefs) {
if (Objects.isNull(codeItemDefs) || codeItemDefs.isEmpty()){
return;
}
lambdaUpdate()
.eq(CodeItemDef::getSite,codeItemDefs.get(0).getSite())
.in(CodeItemDef::getItemNo,codeItemDefs.stream().map(CodeItemDef::getItemNo).collect(Collectors.toList()))
.remove();
codeItemValueService.lambdaUpdate()
.eq(CodeItemValue::getItemNo,codeItemDefs.get(0).getItemNo())
.eq(CodeItemValue::getSite,codeItemDefs.get(0).getSite())
.remove();
}
}

88
src/main/java/com/spring/modules/code/service/impl/CodeItemValueServiceImpl.java

@ -0,0 +1,88 @@
package com.spring.modules.code.service.impl;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.spring.modules.code.entity.CodeItemValue;
import com.spring.modules.code.mapper.CodeItemValueMapper;
import com.spring.modules.code.service.CodeItemValueService;
import lombok.extern.slf4j.Slf4j;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import org.springframework.util.StringUtils;
import java.util.List;
import java.util.Objects;
@Service
@Slf4j
public class CodeItemValueServiceImpl extends ServiceImpl<CodeItemValueMapper, CodeItemValue> implements CodeItemValueService {
@Override
public List<CodeItemValue> searchCodeItemValueList(CodeItemValue codeItemValue) {
LambdaQueryWrapper<CodeItemValue> wrapper = new LambdaQueryWrapper<>();
if (Objects.nonNull(codeItemValue.getItemNo())){
wrapper.eq(CodeItemValue::getItemNo, codeItemValue.getItemNo());
}
if (Objects.nonNull(codeItemValue.getSite()) &&!StringUtils.isEmpty(codeItemValue.getSite().trim())){
wrapper.eq(CodeItemValue::getSite, codeItemValue.getSite().trim());
}
return list();
}
@Override
@Transactional
public void saveCodeItemValue(CodeItemValue codeItemValue) {
save(codeItemValue);
}
@Override
@Transactional
public void removeCodeItemValue(CodeItemValue codeItemValue) {
lambdaUpdate()
.eq(CodeItemValue::getItemNo, codeItemValue.getItemNo())
.eq(CodeItemValue::getSite, codeItemValue.getSite().trim())
.eq(CodeItemValue::getConditionId, codeItemValue.getConditionId())
.eq(CodeItemValue::getValueItemNo, codeItemValue.getValueItemNo())
.remove();
}
@Override
@Transactional
public void updateCodeItemValue(CodeItemValue codeItemValue) {
lambdaUpdate().eq(CodeItemValue::getItemNo, codeItemValue.getItemNo())
.eq(CodeItemValue::getSite, codeItemValue.getSite().trim())
.eq(CodeItemValue::getConditionId, codeItemValue.getConditionId())
.eq(CodeItemValue::getValueItemNo, codeItemValue.getValueItemNo()).update(codeItemValue);
}
@Override
@Transactional
public void saveCodeItemValueBatch(List<CodeItemValue> codeItemValueList) {
if (codeItemValueList.isEmpty()){
return;
}
saveBatch(codeItemValueList);
}
@Override
@Transactional
public void removeCodeItemValueBatch(List<CodeItemValue> codeItemValueList) {
if (codeItemValueList.isEmpty()){
return;
}
lambdaUpdate()
.eq(CodeItemValue::getItemNo, codeItemValueList.get(0).getItemNo())
.eq(CodeItemValue::getSite, codeItemValueList.get(0).getSite().trim())
.eq(CodeItemValue::getConditionId, codeItemValueList.get(0).getConditionId())
.in(CodeItemValue::getValueItemNo, codeItemValueList.stream().map(CodeItemValue::getValueItemNo).toArray())
.remove();
}
@Override
@Transactional
public void updateCodeItemValueBatch(List<CodeItemValue> codeItemValueList) {
if (codeItemValueList.isEmpty()){
return;
}
codeItemValueList.forEach(this::updateCodeItemValue);
}
}

20
src/main/java/com/spring/modules/project/data/PlmProjectPartData.java

@ -11,6 +11,10 @@ public class PlmProjectPartData extends PlmProjectPart {
private String codeDesc;
private String umId;
private String type;
/**
* 项目名称
**/
@ -100,4 +104,20 @@ public class PlmProjectPartData extends PlmProjectPart {
public void setProductGroupName2(String productGroupName2) {
this.productGroupName2 = productGroupName2;
}
public String getUmId() {
return umId;
}
public void setUmId(String umId) {
this.umId = umId;
}
public String getType() {
return type;
}
public void setType(String type) {
this.type = type;
}
}

3
src/main/resources/mapper/project/ProjectDao.xml

@ -373,7 +373,8 @@
product_group_id1,
dbo.get_product_group_name(site, product_group_id1, '1') as productGroupName1,
product_group_id2,
dbo.get_product_group_name(site, product_group_id2, '2') as productGroupName2
dbo.get_product_group_name(site, product_group_id2, '2') as productGroupName2,
um_id,type
from view_Project_Part where site=#{site}
<if test="testPartNo != null and testPartNo != ''">
and test_part_no like #{testPartNo}

4
src/main/resources/mapper/quotation/QuotationInformationMapper.xml

@ -223,7 +223,9 @@
ppp.product_group_id1,
dbo.get_product_group_name(ppp.site, ppp.product_group_id1, '1') as productGroupName1,
ppp.product_group_id2,
dbo.get_product_group_name(ppp.site, ppp.product_group_id2, '2') as productGroupName2
dbo.get_product_group_name(ppp.site, ppp.product_group_id2, '2') as productGroupName2,
ppp.um_id,
ppp.type
FROM view_Project_Part as ppp
LEFT JOIN plm_project_info as ppi on ppp.site = ppi.site and ppp.project_id = ppi.project_id
<where>

Loading…
Cancel
Save