Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
C
config-server-api
Project
Overview
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
何熠
config-server-api
Commits
7c751cae
Commit
7c751cae
authored
Dec 01, 2021
by
zhaoxiaolei
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
调用PLM
parent
c563ea75
Hide whitespace changes
Inline
Side-by-side
Showing
15 changed files
with
204 additions
and
91 deletions
+204
-91
IntegrateController.java
.../uitech/authorization/controller/IntegrateController.java
+46
-47
CharacteristicMapper.java
...com/uitech/authorization/mapper/CharacteristicMapper.java
+3
-1
CtoBomMapper.java
...java/cn/com/uitech/authorization/mapper/CtoBomMapper.java
+1
-1
SuperBomSkuInfoMapper.java
...om/uitech/authorization/mapper/SuperBomSkuInfoMapper.java
+1
-0
ApplySkuCodeResultDto.java
.../uitech/authorization/pojo/dto/ApplySkuCodeResultDto.java
+16
-6
ConfigurableBomResultDto.java
...tech/authorization/pojo/dto/ConfigurableBomResultDto.java
+48
-0
ConfigurableBom.java
...com/uitech/authorization/pojo/entity/ConfigurableBom.java
+3
-0
SuperBomSkuInfo.java
...com/uitech/authorization/pojo/entity/SuperBomSkuInfo.java
+2
-1
CtoBomService.java
...va/cn/com/uitech/authorization/service/CtoBomService.java
+2
-5
IntegrateService.java
...cn/com/uitech/authorization/service/IntegrateService.java
+3
-1
CtoBomServiceImpl.java
.../uitech/authorization/service/impl/CtoBomServiceImpl.java
+3
-2
IntegrateServiceImpl.java
...tech/authorization/service/impl/IntegrateServiceImpl.java
+57
-22
CharacteristicMapper.xml
src/main/resources/mapper/CharacteristicMapper.xml
+5
-1
CtoBomMapper.xml
src/main/resources/mapper/CtoBomMapper.xml
+13
-3
SuperBomSkuInfoMapper.xml
src/main/resources/mapper/SuperBomSkuInfoMapper.xml
+1
-1
No files found.
src/main/java/cn/com/uitech/authorization/controller/IntegrateController.java
View file @
7c751cae
package
cn
.
com
.
uitech
.
authorization
.
controller
;
package
cn
.
com
.
uitech
.
authorization
.
controller
;
import
cn.com.uitech.authorization.mapper.SuperTableInfoMapper
;
import
cn.com.uitech.authorization.mapper.SuperTableInfoMapper
;
import
cn.com.uitech.authorization.pojo.dto.*
;
import
cn.com.uitech.authorization.pojo.dto.*
;
import
cn.com.uitech.authorization.pojo.entity.*
;
import
cn.com.uitech.authorization.pojo.entity.*
;
import
cn.com.uitech.authorization.service.IntegrateService
;
import
cn.com.uitech.authorization.service.IntegrateService
;
import
cn.com.uitech.authorization.utils.CrmResponseEntity
;
import
cn.com.uitech.authorization.utils.CrmResponseEntity
;
import
cn.com.uitech.authorization.utils.RedisHelper
;
import
cn.com.uitech.authorization.utils.RedisHelper
;
import
cn.com.uitech.authorization.utils.RedisKey
;
import
cn.com.uitech.authorization.utils.RedisKey
;
import
cn.com.uitech.authorization.utils.ResultGenerator
;
import
cn.com.uitech.authorization.utils.ResultGenerator
;
import
com.alibaba.fastjson.JSON
;
import
com.alibaba.fastjson.JSON
;
import
com.alibaba.fastjson.JSONObject
;
import
com.alibaba.fastjson.JSONObject
;
import
io.swagger.annotations.Api
;
import
io.swagger.annotations.Api
;
import
io.swagger.annotations.ApiOperation
;
import
io.swagger.annotations.ApiOperation
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.http.HttpEntity
;
import
org.springframework.http.HttpEntity
;
import
org.springframework.http.HttpHeaders
;
import
org.springframework.http.HttpHeaders
;
import
org.springframework.http.HttpMethod
;
import
org.springframework.http.HttpMethod
;
import
org.springframework.http.ResponseEntity
;
import
org.springframework.http.ResponseEntity
;
import
org.springframework.util.CollectionUtils
;
import
org.springframework.util.CollectionUtils
;
import
org.springframework.util.ObjectUtils
;
import
org.springframework.util.ObjectUtils
;
import
org.springframework.util.StringUtils
;
import
org.springframework.util.StringUtils
;
import
org.springframework.validation.Errors
;
import
org.springframework.validation.Errors
;
import
org.springframework.web.bind.annotation.PostMapping
;
import
org.springframework.web.bind.annotation.PostMapping
;
import
org.springframework.web.bind.annotation.RequestBody
;
import
org.springframework.web.bind.annotation.RequestBody
;
import
org.springframework.web.bind.annotation.RequestMapping
;
import
org.springframework.web.bind.annotation.RequestMapping
;
import
org.springframework.web.bind.annotation.RestController
;
import
org.springframework.web.bind.annotation.RestController
;
import
org.springframework.web.client.RestTemplate
;
import
org.springframework.web.client.RestTemplate
;
import
javax.annotation.Resource
;
import
javax.annotation.Resource
;
import
java.util.ArrayList
;
import
java.util.ArrayList
;
import
java.util.HashMap
;
import
java.util.HashMap
;
import
java.util.List
;
import
java.util.List
;
import
java.util.Map
;
import
java.util.Map
;
@RestController
@RestController
@RequestMapping
(
"/integrate"
)
@RequestMapping
(
"/integrate"
)
...
@@ -46,31 +46,31 @@ public class IntegrateController {
...
@@ -46,31 +46,31 @@ public class IntegrateController {
@PostMapping
(
"/setSuperBOMInfo"
)
@PostMapping
(
"/setSuperBOMInfo"
)
@ApiOperation
(
value
=
"集成SuperBom"
,
notes
=
"
集成SuperBom
"
,
httpMethod
=
"POST"
)
@ApiOperation
(
value
=
"集成SuperBom"
,
notes
=
"
setSuperBOMInfo
"
,
httpMethod
=
"POST"
)
public
CrmResponseEntity
<?>
setSuperBOMInfo
(
@RequestBody
List
<
SaveSuperBomInputDto
>
saveSuperBomInputDtos
)
{
public
CrmResponseEntity
<?>
setSuperBOMInfo
(
@RequestBody
List
<
SaveSuperBomInputDto
>
saveSuperBomInputDtos
)
{
return
ResultGenerator
.
genSuccessResult
(
integrateService
.
setSuperBOMInfo
(
saveSuperBomInputDtos
));
return
ResultGenerator
.
genSuccessResult
(
integrateService
.
setSuperBOMInfo
(
saveSuperBomInputDtos
));
}
}
@PostMapping
(
"/setSuperCharacterInfo"
)
@PostMapping
(
"/setSuperCharacterInfo"
)
@ApiOperation
(
value
=
"集成特征"
,
notes
=
"
集成特征
"
,
httpMethod
=
"POST"
)
@ApiOperation
(
value
=
"集成特征"
,
notes
=
"
setSuperCharacterInfo
"
,
httpMethod
=
"POST"
)
public
CrmResponseEntity
<?>
setSuperCharacterInfo
(
@RequestBody
List
<
SaveSuperCharacterInputDto
>
saveSuperCharacterInputDtos
)
{
public
CrmResponseEntity
<?>
setSuperCharacterInfo
(
@RequestBody
List
<
SaveSuperCharacterInputDto
>
saveSuperCharacterInputDtos
)
{
return
ResultGenerator
.
genSuccessResult
(
integrateService
.
setSuperCharacterInfo
(
saveSuperCharacterInputDtos
));
return
ResultGenerator
.
genSuccessResult
(
integrateService
.
setSuperCharacterInfo
(
saveSuperCharacterInputDtos
));
}
}
@PostMapping
(
"/setSuperCharacterValueInfo"
)
@PostMapping
(
"/setSuperCharacterValueInfo"
)
@ApiOperation
(
value
=
"集成特征值"
,
notes
=
"
集成特征值
"
,
httpMethod
=
"POST"
)
@ApiOperation
(
value
=
"集成特征值"
,
notes
=
"
setSuperCharacterValueInfo
"
,
httpMethod
=
"POST"
)
public
CrmResponseEntity
<?>
setSuperCharacterValueInfo
(
@RequestBody
List
<
SaveSuperCharacterValueInputDto
>
saveSuperCharacterValueInputDtos
)
{
public
CrmResponseEntity
<?>
setSuperCharacterValueInfo
(
@RequestBody
List
<
SaveSuperCharacterValueInputDto
>
saveSuperCharacterValueInputDtos
)
{
return
ResultGenerator
.
genSuccessResult
(
integrateService
.
setSuperCharacterValueInfo
(
saveSuperCharacterValueInputDtos
));
return
ResultGenerator
.
genSuccessResult
(
integrateService
.
setSuperCharacterValueInfo
(
saveSuperCharacterValueInputDtos
));
}
}
@PostMapping
(
"/SetSuperTableInfo"
)
@PostMapping
(
"/SetSuperTableInfo"
)
@ApiOperation
(
value
=
"集成OD约束关系"
,
notes
=
"
集成OD约束关系
"
,
httpMethod
=
"POST"
)
@ApiOperation
(
value
=
"集成OD约束关系"
,
notes
=
"
SetSuperTableInfo
"
,
httpMethod
=
"POST"
)
public
CrmResponseEntity
<?>
SetSuperTableInfo
(
@RequestBody
SaveTableInputDto
saveTableInputDtos
)
{
public
CrmResponseEntity
<?>
SetSuperTableInfo
(
@RequestBody
SaveTableInputDto
saveTableInputDtos
)
{
return
ResultGenerator
.
genSuccessResult
(
integrateService
.
SetSuperTableInfo
(
saveTableInputDtos
));
return
ResultGenerator
.
genSuccessResult
(
integrateService
.
SetSuperTableInfo
(
saveTableInputDtos
));
}
}
@PostMapping
(
"/initializationData"
)
@PostMapping
(
"/initializationData"
)
@ApiOperation
(
value
=
"
initializationData"
,
notes
=
"选配器初始化接口
"
,
httpMethod
=
"POST"
)
@ApiOperation
(
value
=
"
选配器初始化"
,
notes
=
"initializationData
"
,
httpMethod
=
"POST"
)
public
Object
initializationData
(
@RequestBody
SelectorEntity
selectorEntity
)
{
public
Object
initializationData
(
@RequestBody
SelectorEntity
selectorEntity
)
{
String
redis
=
redisHelper
.
get
(
RedisKey
.
getVariantTableKey
(
selectorEntity
.
getSystem
(),
selectorEntity
.
getProductClassCode
(),
selectorEntity
.
getSuperBomCode
()));
String
redis
=
redisHelper
.
get
(
RedisKey
.
getVariantTableKey
(
selectorEntity
.
getSystem
(),
selectorEntity
.
getProductClassCode
(),
selectorEntity
.
getSuperBomCode
()));
if
(
ObjectUtils
.
isEmpty
(
redis
))
{
if
(
ObjectUtils
.
isEmpty
(
redis
))
{
...
@@ -192,7 +192,7 @@ public class IntegrateController {
...
@@ -192,7 +192,7 @@ public class IntegrateController {
}
}
@PostMapping
(
"/preVerify"
)
@PostMapping
(
"/preVerify"
)
@ApiOperation
(
value
=
"
preVerify"
,
notes
=
"选配器前置验证
"
,
httpMethod
=
"POST"
)
@ApiOperation
(
value
=
"
选配器前置验证"
,
notes
=
"preVerify
"
,
httpMethod
=
"POST"
)
public
Object
preVerify
(
@RequestBody
PreVerifyInputDTO
preVerifyInputDTO
,
public
Object
preVerify
(
@RequestBody
PreVerifyInputDTO
preVerifyInputDTO
,
Errors
errors
)
{
Errors
errors
)
{
RestTemplate
restTemplate
=
new
RestTemplate
();
RestTemplate
restTemplate
=
new
RestTemplate
();
...
@@ -222,7 +222,7 @@ public class IntegrateController {
...
@@ -222,7 +222,7 @@ public class IntegrateController {
}
}
@PostMapping
(
"/postVerify"
)
@PostMapping
(
"/postVerify"
)
@ApiOperation
(
value
=
"
postVerify"
,
notes
=
"选配器后置验证
"
,
httpMethod
=
"POST"
)
@ApiOperation
(
value
=
"
选配器后置验证"
,
notes
=
"postVerify
"
,
httpMethod
=
"POST"
)
public
Object
preVerify
(
@RequestBody
PostVerifyInputDTO
postVerifyInputDTO
,
public
Object
preVerify
(
@RequestBody
PostVerifyInputDTO
postVerifyInputDTO
,
Errors
errors
)
{
Errors
errors
)
{
RestTemplate
restTemplate
=
new
RestTemplate
();
RestTemplate
restTemplate
=
new
RestTemplate
();
...
@@ -234,7 +234,7 @@ public class IntegrateController {
...
@@ -234,7 +234,7 @@ public class IntegrateController {
}
}
@PostMapping
(
"/buildConfiguration"
)
@PostMapping
(
"/buildConfiguration"
)
@ApiOperation
(
value
=
"
buildConfiguration"
,
notes
=
"生成配置
"
,
httpMethod
=
"POST"
)
@ApiOperation
(
value
=
"
生成配置"
,
notes
=
"buildConfiguration
"
,
httpMethod
=
"POST"
)
public
Object
buildConfiguration
(
@RequestBody
BuildConfigurationInputDTO
buildConfigurationInputDTO
,
public
Object
buildConfiguration
(
@RequestBody
BuildConfigurationInputDTO
buildConfigurationInputDTO
,
Errors
errors
)
{
Errors
errors
)
{
RestTemplate
restTemplate
=
new
RestTemplate
();
RestTemplate
restTemplate
=
new
RestTemplate
();
...
@@ -260,42 +260,41 @@ public class IntegrateController {
...
@@ -260,42 +260,41 @@ public class IntegrateController {
}
}
@PostMapping
(
"/getConfigurations"
)
@PostMapping
(
"/getConfigurations"
)
@ApiOperation
(
value
=
"
getConfigurations"
,
notes
=
"根据configId获取配置
"
,
httpMethod
=
"POST"
)
@ApiOperation
(
value
=
"
根据configId获取配置"
,
notes
=
"getConfigurations
"
,
httpMethod
=
"POST"
)
public
Object
getConfigurations
(
@RequestBody
GetConfigurationInputDTO
getConfigurationInputDTO
,
public
Object
getConfigurations
(
@RequestBody
GetConfigurationInputDTO
getConfigurationInputDTO
,
Errors
errors
)
{
Errors
errors
)
{
return
integrateService
.
getConfigInfo
(
getConfigurationInputDTO
);
return
integrateService
.
getConfigInfo
(
getConfigurationInputDTO
);
}
}
@PostMapping
(
"/GetConfigBySUKINFO"
)
@PostMapping
(
"/GetConfigBySUKINFO"
)
@ApiOperation
(
value
=
"
GetConfigBySUKINFO"
,
notes
=
"SKU配置接口CRM
"
,
httpMethod
=
"POST"
)
@ApiOperation
(
value
=
"
SKU配置接口CRM"
,
notes
=
"GetConfigBySUKINFO
"
,
httpMethod
=
"POST"
)
public
CrmResponseEntity
<?>
GetConfigBySUKINFO
(
@RequestBody
SuperBomSkuInfo
superBomSkuInfo
){
public
CrmResponseEntity
<?>
GetConfigBySUKINFO
(
@RequestBody
SuperBomSkuInfo
superBomSkuInfo
){
return
ResultGenerator
.
genSuccessResult
(
integrateService
.
GetConfigBySUKINFO
(
superBomSkuInfo
));
return
ResultGenerator
.
genSuccessResult
(
integrateService
.
GetConfigBySUKINFO
(
superBomSkuInfo
));
}
}
@PostMapping
(
"/GetSKUByConfigInfo"
)
@PostMapping
(
"/GetSKUByConfigInfo"
)
@ApiOperation
(
value
=
"
GetSKUByConfigInfo"
,
notes
=
"撞配
"
,
httpMethod
=
"POST"
)
@ApiOperation
(
value
=
"
撞配"
,
notes
=
"GetSKUByConfigInfo
"
,
httpMethod
=
"POST"
)
public
CrmResponseEntity
<?>
GetSKUByConfigInfo
(
@RequestBody
SuperBomSkuInfo
superBomSkuInfo
){
public
CrmResponseEntity
<?>
GetSKUByConfigInfo
(
@RequestBody
SuperBomSkuInfo
superBomSkuInfo
){
return
ResultGenerator
.
genSuccessResult
(
integrateService
.
GetSKUByConfigInfo
(
superBomSkuInfo
));
return
ResultGenerator
.
genSuccessResult
(
integrateService
.
GetSKUByConfigInfo
(
superBomSkuInfo
));
}
}
@PostMapping
(
"/GetSKUByH3CConfigInfo"
)
@PostMapping
(
"/GetSKUByH3CConfigInfo"
)
@ApiOperation
(
value
=
"
GetSKUByH3CConfigInfo"
,
notes
=
"SKU配置接口H3C
"
,
httpMethod
=
"POST"
)
@ApiOperation
(
value
=
"
SKU配置接口H3C"
,
notes
=
"GetSKUByH3CConfigInfo
"
,
httpMethod
=
"POST"
)
public
CrmResponseEntity
<?>
GetSKUByH3CConfigInfo
(
@RequestBody
GetSKUByH3CConfigInfo
configSkuInfo
){
public
CrmResponseEntity
<?>
GetSKUByH3CConfigInfo
(
@RequestBody
GetSKUByH3CConfigInfo
configSkuInfo
){
return
ResultGenerator
.
genSuccessResult
(
integrateService
.
GetSKUByH3CConfigInfo
(
configSkuInfo
));
return
ResultGenerator
.
genSuccessResult
(
integrateService
.
GetSKUByH3CConfigInfo
(
configSkuInfo
));
}
}
@PostMapping
(
"/saveSukInfo"
)
@PostMapping
(
"/saveSukInfo"
)
@ApiOperation
(
value
=
"
applySukCode"
,
notes
=
"保存Sku信息CPQ
"
,
httpMethod
=
"POST"
)
@ApiOperation
(
value
=
"
保存Sku信息CPQ"
,
notes
=
"applySukCode
"
,
httpMethod
=
"POST"
)
public
CrmResponseEntity
<?>
saveSukInfo
(
@RequestBody
SuperBomSkuInfo
superBomSkuInfo
){
public
CrmResponseEntity
<?>
saveSukInfo
(
@RequestBody
SuperBomSkuInfo
superBomSkuInfo
){
return
ResultGenerator
.
genSuccessResult
(
integrateService
.
saveSukInfo
(
superBomSkuInfo
));
return
ResultGenerator
.
genSuccessResult
(
integrateService
.
saveSukInfo
(
superBomSkuInfo
));
}
}
@PostMapping
(
"/querySkuList"
)
@PostMapping
(
"/querySkuList"
)
@ApiOperation
(
value
=
"
querySkuList"
,
notes
=
"查询sku信息
"
,
httpMethod
=
"POST"
)
@ApiOperation
(
value
=
"
查询sku信息List"
,
notes
=
"querySkuList
"
,
httpMethod
=
"POST"
)
public
CrmResponseEntity
<?>
querySkuList
(
@RequestBody
SuperBomSkuInfo
superBomSkuInfo
){
public
CrmResponseEntity
<?>
querySkuList
(
@RequestBody
SuperBomSkuInfo
superBomSkuInfo
){
List
<
SuperBomSkuInfo
>
list
=
integrateService
.
querySkuList
(
superBomSkuInfo
);
return
ResultGenerator
.
genSuccessResult
(
integrateService
.
querySkuList
(
superBomSkuInfo
));
return
ResultGenerator
.
genSuccessResult
(
list
);
}
}
...
...
src/main/java/cn/com/uitech/authorization/mapper/CharacteristicMapper.java
View file @
7c751cae
...
@@ -81,5 +81,7 @@ public interface CharacteristicMapper extends IBaseMapper<Characteristic>, Inser
...
@@ -81,5 +81,7 @@ public interface CharacteristicMapper extends IBaseMapper<Characteristic>, Inser
SuperBomSkuConfigInfo
checkConfig
(
String
characteristicCode
,
String
characteristicValueCode
,
String
superBomCode
);
SuperBomSkuConfigInfo
checkConfig
(
String
characteristicCode
,
String
characteristicValueCode
,
String
superBomCode
);
void
updateSuperBomSkuInfo
(
ApplySkuCodeResultDto
applySkuCodeResultDto
);
void
updateSuperBomSkuInfo
(
ApplySkuCodeResultDto
.
data
applySkuCodeResultDto
);
void
updateSuperBomSkuStatus
(
ApplySkuCodeResultDto
.
data
data
);
}
}
src/main/java/cn/com/uitech/authorization/mapper/CtoBomMapper.java
View file @
7c751cae
...
@@ -23,7 +23,7 @@ public interface CtoBomMapper extends IBaseMapper<ConfigurableBom>
...
@@ -23,7 +23,7 @@ public interface CtoBomMapper extends IBaseMapper<ConfigurableBom>
* @param ctoBomRequestParamDto
* @param ctoBomRequestParamDto
* @return cto物料集合
* @return cto物料集合
*/
*/
List
<
ConfigurableBom
>
getCtoBoms
(
CtoBomRequestParamDto
ctoBomRequestParamDto
);
List
<
ConfigurableBom
ResultDto
>
getCtoBoms
(
CtoBomRequestParamDto
ctoBomRequestParamDto
);
/**
/**
* 根据bomcode修改cto物料
* 根据bomcode修改cto物料
...
...
src/main/java/cn/com/uitech/authorization/mapper/SuperBomSkuInfoMapper.java
View file @
7c751cae
...
@@ -19,4 +19,5 @@ public interface SuperBomSkuInfoMapper extends IBaseMapper<SuperBomSkuInfo> {
...
@@ -19,4 +19,5 @@ public interface SuperBomSkuInfoMapper extends IBaseMapper<SuperBomSkuInfo> {
void
updateSkuInfo
(
ApplySkuCodeResultDto
applySkuCodeResultDto
);
void
updateSkuInfo
(
ApplySkuCodeResultDto
applySkuCodeResultDto
);
List
<
SuperBomSkuInfo
>
querySkuList
(
SuperBomSkuInfo
superBomSkuInfo
);
List
<
SuperBomSkuInfo
>
querySkuList
(
SuperBomSkuInfo
superBomSkuInfo
);
}
}
src/main/java/cn/com/uitech/authorization/pojo/dto/ApplySkuCodeResultDto.java
View file @
7c751cae
...
@@ -16,11 +16,21 @@ import java.io.Serializable;
...
@@ -16,11 +16,21 @@ import java.io.Serializable;
@ToString
@ToString
public
class
ApplySkuCodeResultDto
implements
Serializable
{
public
class
ApplySkuCodeResultDto
implements
Serializable
{
// Configid,SKUCode,SKUCode,产品型号,产品小型好,69码
private
data
data
;
private
String
configId
;
@Accessors
(
chain
=
true
)
private
String
skuCode
;
@NoArgsConstructor
private
String
productType
;
@Getter
private
String
productSmallType
;
@Setter
private
String
sncode
;
@ToString
public
static
class
data
{
private
String
skuCode
;
private
String
skuName
;
private
String
h3cSuperNumber
;
private
String
configId
;
private
String
msg
;
}
private
String
msg
;
private
Integer
code
;
}
}
src/main/java/cn/com/uitech/authorization/pojo/dto/ConfigurableBomResultDto.java
0 → 100644
View file @
7c751cae
package
cn
.
com
.
uitech
.
authorization
.
pojo
.
dto
;
import
io.swagger.annotations.ApiModelProperty
;
import
lombok.Getter
;
import
lombok.NoArgsConstructor
;
import
lombok.Setter
;
import
lombok.ToString
;
import
lombok.experimental.Accessors
;
import
java.io.Serializable
;
import
java.util.List
;
@Accessors
(
chain
=
true
)
@NoArgsConstructor
@Getter
@Setter
@ToString
public
class
ConfigurableBomResultDto
implements
Serializable
{
private
static
final
long
serialVersionUID
=
-
4988257241712574537L
;
@ApiModelProperty
(
name
=
"superBomCode"
,
value
=
"物料编码"
,
dataType
=
"String"
)
private
String
superBomCode
;
@ApiModelProperty
(
name
=
"superBomName"
,
value
=
"cto名字"
,
dataType
=
"String"
)
private
String
superBomName
;
@ApiModelProperty
(
name
=
"productClassCode"
,
value
=
"产品组编号"
,
dataType
=
"String"
)
private
String
productClassCode
;
@ApiModelProperty
(
name
=
"productClassName"
,
value
=
"产品组编号"
,
dataType
=
"String"
)
private
String
productClassName
;
@ApiModelProperty
(
name
=
"unisSalesName"
,
value
=
"Unis销售名称"
,
dataType
=
"String"
)
private
String
unisSalesName
;
@ApiModelProperty
(
name
=
"isState"
,
value
=
"是否启用"
,
dataType
=
"Integer"
)
private
Integer
isState
;
@ApiModelProperty
(
name
=
"brand"
,
value
=
"品牌"
,
dataType
=
"String"
)
private
String
brand
;
@ApiModelProperty
(
name
=
"brandName"
,
value
=
"品牌"
,
dataType
=
"String"
)
private
String
brandName
;
}
src/main/java/cn/com/uitech/authorization/pojo/entity/ConfigurableBom.java
View file @
7c751cae
...
@@ -95,6 +95,9 @@ public class ConfigurableBom implements Serializable{
...
@@ -95,6 +95,9 @@ public class ConfigurableBom implements Serializable{
@Column
(
name
=
"brand"
)
@Column
(
name
=
"brand"
)
@ApiModelProperty
(
name
=
"brand"
,
value
=
"品牌"
,
dataType
=
"String"
)
@ApiModelProperty
(
name
=
"brand"
,
value
=
"品牌"
,
dataType
=
"String"
)
private
String
brand
;
private
String
brand
;
@Transient
@ApiModelProperty
(
name
=
"brandName"
,
value
=
"品牌"
,
dataType
=
"String"
)
private
String
brandName
;
private
List
<
Characteristic
>
characteristicList
;
private
List
<
Characteristic
>
characteristicList
;
...
...
src/main/java/cn/com/uitech/authorization/pojo/entity/SuperBomSkuInfo.java
View file @
7c751cae
package
cn
.
com
.
uitech
.
authorization
.
pojo
.
entity
;
package
cn
.
com
.
uitech
.
authorization
.
pojo
.
entity
;
import
cn.com.uitech.authorization.pojo.dto.BasePageDto
;
import
lombok.Getter
;
import
lombok.Getter
;
import
lombok.NoArgsConstructor
;
import
lombok.NoArgsConstructor
;
import
lombok.Setter
;
import
lombok.Setter
;
...
@@ -17,7 +18,7 @@ import java.util.List;
...
@@ -17,7 +18,7 @@ import java.util.List;
@Setter
@Setter
@ToString
@ToString
@Table
(
name
=
"super_bom_sku_info"
)
@Table
(
name
=
"super_bom_sku_info"
)
public
class
SuperBomSkuInfo
implements
Serializable
{
public
class
SuperBomSkuInfo
extends
BasePageDto
implements
Serializable
{
private
static
final
long
serialVersionUID
=
1L
;
private
static
final
long
serialVersionUID
=
1L
;
...
...
src/main/java/cn/com/uitech/authorization/service/CtoBomService.java
View file @
7c751cae
package
cn
.
com
.
uitech
.
authorization
.
service
;
package
cn
.
com
.
uitech
.
authorization
.
service
;
import
cn.com.uitech.authorization.pojo.dto.ComponentCargoDto
;
import
cn.com.uitech.authorization.pojo.dto.*
;
import
cn.com.uitech.authorization.pojo.dto.CtoBomDto
;
import
cn.com.uitech.authorization.pojo.dto.CtoBomRequestParamDto
;
import
cn.com.uitech.authorization.pojo.dto.IndustryDto
;
import
cn.com.uitech.authorization.pojo.entity.BomStatusEntity
;
import
cn.com.uitech.authorization.pojo.entity.BomStatusEntity
;
import
cn.com.uitech.authorization.pojo.entity.ConfigurableBom
;
import
cn.com.uitech.authorization.pojo.entity.ConfigurableBom
;
import
com.github.pagehelper.PageInfo
;
import
com.github.pagehelper.PageInfo
;
...
@@ -22,7 +19,7 @@ public interface CtoBomService {
...
@@ -22,7 +19,7 @@ public interface CtoBomService {
* @param ctoBomRequestParamDto
* @param ctoBomRequestParamDto
* @return cto物料集合
* @return cto物料集合
*/
*/
PageInfo
<
ConfigurableBom
>
getCtoBoms
(
CtoBomRequestParamDto
ctoBomRequestParamDto
);
PageInfo
<
ConfigurableBom
ResultDto
>
getCtoBoms
(
CtoBomRequestParamDto
ctoBomRequestParamDto
);
/**
/**
* 根据bomcode修改cto物料
* 根据bomcode修改cto物料
...
...
src/main/java/cn/com/uitech/authorization/service/IntegrateService.java
View file @
7c751cae
...
@@ -3,6 +3,7 @@ package cn.com.uitech.authorization.service;
...
@@ -3,6 +3,7 @@ package cn.com.uitech.authorization.service;
import
cn.com.uitech.authorization.controller.GetSKUByH3CConfigInfo
;
import
cn.com.uitech.authorization.controller.GetSKUByH3CConfigInfo
;
import
cn.com.uitech.authorization.pojo.dto.*
;
import
cn.com.uitech.authorization.pojo.dto.*
;
import
cn.com.uitech.authorization.pojo.entity.*
;
import
cn.com.uitech.authorization.pojo.entity.*
;
import
com.github.pagehelper.PageInfo
;
import
java.util.HashMap
;
import
java.util.HashMap
;
import
java.util.List
;
import
java.util.List
;
...
@@ -43,5 +44,6 @@ public interface IntegrateService {
...
@@ -43,5 +44,6 @@ public interface IntegrateService {
Object
GetConfigBySUKINFO
(
SuperBomSkuInfo
superBomSkuInfo
);
Object
GetConfigBySUKINFO
(
SuperBomSkuInfo
superBomSkuInfo
);
List
<
SuperBomSkuInfo
>
querySkuList
(
SuperBomSkuInfo
superBomSkuInfo
);
PageInfo
<
SuperBomSkuInfo
>
querySkuList
(
SuperBomSkuInfo
superBomSkuInfo
);
}
}
src/main/java/cn/com/uitech/authorization/service/impl/CtoBomServiceImpl.java
View file @
7c751cae
...
@@ -6,6 +6,7 @@ import cn.com.uitech.authorization.mapper.CtoBomMapper;
...
@@ -6,6 +6,7 @@ import cn.com.uitech.authorization.mapper.CtoBomMapper;
import
cn.com.uitech.authorization.mapper.PricecalexpressionMapper
;
import
cn.com.uitech.authorization.mapper.PricecalexpressionMapper
;
import
cn.com.uitech.authorization.mapper.ProductDescriptionMapper
;
import
cn.com.uitech.authorization.mapper.ProductDescriptionMapper
;
import
cn.com.uitech.authorization.pojo.dto.ComponentCargoDto
;
import
cn.com.uitech.authorization.pojo.dto.ComponentCargoDto
;
import
cn.com.uitech.authorization.pojo.dto.ConfigurableBomResultDto
;
import
cn.com.uitech.authorization.pojo.dto.CtoBomRequestParamDto
;
import
cn.com.uitech.authorization.pojo.dto.CtoBomRequestParamDto
;
import
cn.com.uitech.authorization.pojo.entity.BomStatusEntity
;
import
cn.com.uitech.authorization.pojo.entity.BomStatusEntity
;
import
cn.com.uitech.authorization.pojo.entity.ConfigurableBom
;
import
cn.com.uitech.authorization.pojo.entity.ConfigurableBom
;
...
@@ -76,9 +77,9 @@ public class CtoBomServiceImpl implements CtoBomService {
...
@@ -76,9 +77,9 @@ public class CtoBomServiceImpl implements CtoBomService {
* @return cto物料集合
* @return cto物料集合
*/
*/
@Override
@Override
public
PageInfo
<
ConfigurableBom
>
getCtoBoms
(
CtoBomRequestParamDto
ctoBomRequestParamDto
)
{
public
PageInfo
<
ConfigurableBom
ResultDto
>
getCtoBoms
(
CtoBomRequestParamDto
ctoBomRequestParamDto
)
{
PageHelper
.
startPage
(
ctoBomRequestParamDto
.
getPage
(),
ctoBomRequestParamDto
.
getPerPage
());
PageHelper
.
startPage
(
ctoBomRequestParamDto
.
getPage
(),
ctoBomRequestParamDto
.
getPerPage
());
List
<
ConfigurableBom
>
ctoBoms
=
ctoBomMapper
.
getCtoBoms
(
ctoBomRequestParamDto
);
List
<
ConfigurableBom
ResultDto
>
ctoBoms
=
ctoBomMapper
.
getCtoBoms
(
ctoBomRequestParamDto
);
return
new
PageInfo
(
ctoBoms
);
return
new
PageInfo
(
ctoBoms
);
}
}
...
...
src/main/java/cn/com/uitech/authorization/service/impl/IntegrateServiceImpl.java
View file @
7c751cae
...
@@ -12,6 +12,8 @@ import cn.com.uitech.authorization.utils.ApiResult;
...
@@ -12,6 +12,8 @@ import cn.com.uitech.authorization.utils.ApiResult;
import
cn.com.uitech.authorization.utils.Sequence
;
import
cn.com.uitech.authorization.utils.Sequence
;
import
com.alibaba.fastjson.JSON
;
import
com.alibaba.fastjson.JSON
;
import
com.alibaba.fastjson.JSONObject
;
import
com.alibaba.fastjson.JSONObject
;
import
com.github.pagehelper.PageHelper
;
import
com.github.pagehelper.PageInfo
;
import
org.springframework.beans.BeanUtils
;
import
org.springframework.beans.BeanUtils
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.beans.factory.annotation.Value
;
import
org.springframework.beans.factory.annotation.Value
;
...
@@ -26,12 +28,10 @@ import org.springframework.util.CollectionUtils;
...
@@ -26,12 +28,10 @@ import org.springframework.util.CollectionUtils;
import
org.springframework.util.ObjectUtils
;
import
org.springframework.util.ObjectUtils
;
import
org.springframework.util.StringUtils
;
import
org.springframework.util.StringUtils
;
import
org.springframework.web.client.RestTemplate
;
import
org.springframework.web.client.RestTemplate
;
import
springfox.documentation.spring.web.json.Json
;
import
java.sql.Timestamp
;
import
java.sql.Timestamp
;
import
java.util.ArrayList
;
import
java.util.*
;
import
java.util.HashMap
;
import
java.util.List
;
import
java.util.Map
;
@Service
@Service
...
@@ -291,14 +291,22 @@ public class IntegrateServiceImpl implements IntegrateService {
...
@@ -291,14 +291,22 @@ public class IntegrateServiceImpl implements IntegrateService {
config
.
setId
(
sequence
.
nextId
());
config
.
setId
(
sequence
.
nextId
());
superBomSkuInfoMapper
.
saveSkuConfig
(
config
);
superBomSkuInfoMapper
.
saveSkuConfig
(
config
);
flag
=
false
;
flag
=
false
;
}
else
{
return
superBomSkuInfo
;
}
}
}
}
if
(
flag
.
equals
(
false
))
{
if
(
flag
.
equals
(
false
))
{
//调用PLM申请sku号 返回后修改sku数据返回
//调用PLM申请sku号 返回后修改sku数据返回
ApplySkuCodeResultDto
applySkuCodeResultDto
=
applySkuCode
(
superBomSkuInfo
);
ApplySkuCodeResultDto
applySkuCodeResultDto
=
applySkuCode
(
superBomSkuInfo
);
characteristicMapper
.
updateSuperBomSkuInfo
(
applySkuCodeResultDto
);
if
(
applySkuCodeResultDto
.
getCode
().
equals
(
200
))
{
ApplySkuCodeResultDto
.
data
data
=
applySkuCodeResultDto
.
getData
();
data
.
setConfigId
(
superBomSkuInfo
.
getConfigId
());
data
.
setMsg
(
"已回号"
);
characteristicMapper
.
updateSuperBomSkuInfo
(
data
);
}
else
{
ApplySkuCodeResultDto
.
data
data
=
applySkuCodeResultDto
.
getData
();
data
.
setConfigId
(
superBomSkuInfo
.
getConfigId
());
data
.
setMsg
(
"未回号"
);
characteristicMapper
.
updateSuperBomSkuStatus
(
data
);
}
}
else
if
(
flag
)
{
}
else
if
(
flag
)
{
return
superBomSkuInfo
;
return
superBomSkuInfo
;
}
}
...
@@ -320,10 +328,12 @@ public class IntegrateServiceImpl implements IntegrateService {
...
@@ -320,10 +328,12 @@ public class IntegrateServiceImpl implements IntegrateService {
* @return
* @return
*/
*/
@Override
@Override
public
List
<
SuperBomSkuInfo
>
querySkuList
(
SuperBomSkuInfo
superBomSkuInfo
)
{
public
PageInfo
<
SuperBomSkuInfo
>
querySkuList
(
SuperBomSkuInfo
superBomSkuInfo
)
{
return
superBomSkuInfoMapper
.
querySkuList
(
superBomSkuInfo
);
PageHelper
.
startPage
(
superBomSkuInfo
.
getPage
(),
superBomSkuInfo
.
getPerPage
());
return
new
PageInfo
<>(
superBomSkuInfoMapper
.
querySkuList
(
superBomSkuInfo
));
}
}
/**
/**
* @return Configid, SKUCode,SKUCode,产品型号,产品小型好,69码
* @return Configid, SKUCode,SKUCode,产品型号,产品小型好,69码
* @Author 赵晓雷
* @Author 赵晓雷
...
@@ -331,6 +341,7 @@ public class IntegrateServiceImpl implements IntegrateService {
...
@@ -331,6 +341,7 @@ public class IntegrateServiceImpl implements IntegrateService {
* @Date 2021/11/29 15:01
* @Date 2021/11/29 15:01
* @Param 选配器出参+申请SKU参数,是否政采,模式
* @Param 选配器出参+申请SKU参数,是否政采,模式
**/
**/
public
ApplySkuCodeResultDto
applySkuCode
(
SuperBomSkuInfo
superBomSkuInfo
)
{
public
ApplySkuCodeResultDto
applySkuCode
(
SuperBomSkuInfo
superBomSkuInfo
)
{
ApplySkuCodeResultDto
dto
=
new
ApplySkuCodeResultDto
();
ApplySkuCodeResultDto
dto
=
new
ApplySkuCodeResultDto
();
//调用PLM 申请skuCode
//调用PLM 申请skuCode
...
@@ -368,15 +379,25 @@ public class IntegrateServiceImpl implements IntegrateService {
...
@@ -368,15 +379,25 @@ public class IntegrateServiceImpl implements IntegrateService {
}
}
toPLMDto
.
setOptionChoiceMaps
(
maps
);
toPLMDto
.
setOptionChoiceMaps
(
maps
);
HttpHeaders
headers
=
getHttpHeaderPlm
(
nonce
);
HttpHeaders
headers
=
getHttpHeaderPlm
(
nonce
);
HttpEntity
<
Object
>
requestEntity
=
new
HttpEntity
<>(
JSON
.
toJSON
(
toPLMDto
),
headers
);
HttpEntity
httpEntity
=
new
HttpEntity
<>(
JSONObject
.
toJSON
(
toPLMDto
),
headers
);
Object
o2
=
restTemplate
.
exchange
(
plmUrl
,
HttpMethod
.
POST
,
requestEntity
,
Object
.
class
);
Map
<
String
,
Object
>
map
=
(
Map
<
String
,
Object
>)
restTemplate
.
exchange
(
plmUrl
,
HttpMethod
.
POST
,
httpEntity
,
Object
.
class
).
getBody
();
/*JSONObject object = JSONObject.parseObject(responseEntity.toString());
Integer
code
=
(
Integer
)
map
.
get
(
"code"
);
object.get("data");
if
(!
ObjectUtils
.
isEmpty
(
code
))
{
dto.setConfigId("ConfigId");
if
(
code
.
equals
(
200
))
{
dto.setProductSmallType("产品小型号");
Map
<
String
,
Object
>
data
=
(
Map
<
String
,
Object
>)
map
.
get
(
"data"
);
dto.setProductType("产品型号");
ApplySkuCodeResultDto
.
data
data1
=
new
ApplySkuCodeResultDto
.
data
();
dto.setSkuCode("SkuCode");
data1
.
setSkuCode
(
String
.
valueOf
(
data
.
get
(
"skuNo"
)));
dto.setSncode("69码");*/
data1
.
setSkuName
(
String
.
valueOf
(
data
.
get
(
"skuName"
)));
data1
.
setH3cSuperNumber
(
String
.
valueOf
(
data
.
get
(
"h3cSuperNumber"
)));
dto
.
setMsg
(
String
.
valueOf
(
map
.
get
(
"messsage"
)));
dto
.
setCode
(
code
);
dto
.
setData
(
data1
);
}
else
{
dto
.
setCode
(
code
);
dto
.
setMsg
(
String
.
valueOf
(
map
.
get
(
"messsage"
)));
dto
.
setData
((
ApplySkuCodeResultDto
.
data
)
map
.
get
(
"data"
));
}
}
return
dto
;
return
dto
;
}
}
...
@@ -561,11 +582,24 @@ public class IntegrateServiceImpl implements IntegrateService {
...
@@ -561,11 +582,24 @@ public class IntegrateServiceImpl implements IntegrateService {
//保存完成后申请SKU 调用PLM申请SKU编号
//保存完成后申请SKU 调用PLM申请SKU编号
ApplySkuCodeResultDto
applySkuCodeResultDto
=
applySkuCode
(
superBomSkuInfo
);
ApplySkuCodeResultDto
applySkuCodeResultDto
=
applySkuCode
(
superBomSkuInfo
);
//根据 ConfigId 修改 产品小型号 产品型号 SkuCode 69码
//根据 ConfigId 修改 产品小型号 产品型号 SkuCode 69码
if
(!
ObjectUtils
.
isEmpty
(
applySkuCodeResultDto
))
{
if
(
applySkuCodeResultDto
.
getCode
().
equals
(
200
))
{
superBomSkuInfoMapper
.
updateSkuInfo
(
applySkuCodeResultDto
);
ApplySkuCodeResultDto
.
data
data
=
applySkuCodeResultDto
.
getData
();
data
.
setConfigId
(
superBomSkuInfo
.
getConfigId
());
data
.
setMsg
(
"已回号"
);
characteristicMapper
.
updateSuperBomSkuInfo
(
data
);
result
.
setCode
(
applySkuCodeResultDto
.
getCode
());
result
.
setMsg
(
applySkuCodeResultDto
.
getMsg
());
}
else
{
ApplySkuCodeResultDto
.
data
data
=
applySkuCodeResultDto
.
getData
();
data
.
setConfigId
(
superBomSkuInfo
.
getConfigId
());
data
.
setMsg
(
"未回号"
);
characteristicMapper
.
updateSuperBomSkuStatus
(
data
);
result
.
setCode
(
applySkuCodeResultDto
.
getCode
());
result
.
setMsg
(
applySkuCodeResultDto
.
getMsg
());
result
.
setData
(
applySkuCodeResultDto
);
return
result
;
}
}
result
.
setCode
(
ApiResult
.
SUCCESS
.
getCode
());
result
.
setMsg
(
ApiResult
.
SUCCESS
.
getMsg
());
}
catch
(
Exception
e
)
{
}
catch
(
Exception
e
)
{
new
BusinessException
(
ApiResult
.
INTERNAL_SERVER_ERROR
.
getMsg
());
new
BusinessException
(
ApiResult
.
INTERNAL_SERVER_ERROR
.
getMsg
());
}
}
...
@@ -583,6 +617,7 @@ public class IntegrateServiceImpl implements IntegrateService {
...
@@ -583,6 +617,7 @@ public class IntegrateServiceImpl implements IntegrateService {
headers
.
add
(
"Content-Type"
,
"application/json"
);
headers
.
add
(
"Content-Type"
,
"application/json"
);
headers
.
add
(
"Authorization"
,
headerAuthorization
);
headers
.
add
(
"Authorization"
,
headerAuthorization
);
headers
.
add
(
"CSRF_NONCE"
,
headerTokenMsg
);
headers
.
add
(
"CSRF_NONCE"
,
headerTokenMsg
);
//headers.add("Expect", "100-continue");
return
headers
;
return
headers
;
}
}
...
...
src/main/resources/mapper/CharacteristicMapper.xml
View file @
7c751cae
...
@@ -179,6 +179,10 @@
...
@@ -179,6 +179,10 @@
</select>
</select>
<update
id=
"updateSuperBomSkuInfo"
>
<update
id=
"updateSuperBomSkuInfo"
>
update super_bom_sku_info where sku_code = #{skuCode},sncode = #{sncode},product_type = #{productType},product_small_type = #{productSmallType} where config_id = #{configId}
update super_bom_sku_info set sku_code = #{skuCode},sku_name = #{skuName},apply_status = #{msg} where config_id = #{configId}
</update>
<update
id=
"updateSuperBomSkuStatus"
>
update super_bom_sku_info set msg = #{msg} where config_id = #{configId}
</update>
</update>
</mapper>
</mapper>
src/main/resources/mapper/CtoBomMapper.xml
View file @
7c751cae
...
@@ -2,9 +2,19 @@
...
@@ -2,9 +2,19 @@
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper
namespace=
"cn.com.uitech.authorization.mapper.CtoBomMapper"
>
<mapper
namespace=
"cn.com.uitech.authorization.mapper.CtoBomMapper"
>
<select
id=
"getCtoBoms"
parameterType=
"cn.com.uitech.authorization.pojo.dto.CtoBomRequestParamDto"
<select
id=
"getCtoBoms"
parameterType=
"cn.com.uitech.authorization.pojo.dto.CtoBomRequestParamDto"
resultType=
"cn.com.uitech.authorization.pojo.entity.ConfigurableBom"
>
resultType=
"cn.com.uitech.authorization.pojo.dto.ConfigurableBomResultDto"
>
SELECT *
SELECT
FROM super_bom_info
a.super_Bom_Code as superBomCode
,a.super_Bom_Name as superBomName
,a.product_Class_Code as productClassCode
,b.product_Class_Name as productClassName
,unis_Sales_Name as unisSalesName
,is_State as isState
,a.brand
,c.name as brandName
FROM super_bom_info a
left join a_productclasscode b on a.product_class_code = b.product_class_code
left join brand c on c.code = a.brand
<where>
<where>
<if
test=
"superBomCode!=null and superBomCode!=''"
>
<if
test=
"superBomCode!=null and superBomCode!=''"
>
super_bom_code like CONCAT('%','${superBomCode}','%')
super_bom_code like CONCAT('%','${superBomCode}','%')
...
...
src/main/resources/mapper/SuperBomSkuInfoMapper.xml
View file @
7c751cae
...
@@ -85,7 +85,7 @@
...
@@ -85,7 +85,7 @@
select * from super_bom_sku_config_info where super_bom_code = #{h3cPn} and characteristic_value_code = #{vCode}
select * from super_bom_sku_config_info where super_bom_code = #{h3cPn} and characteristic_value_code = #{vCode}
</select>
</select>
<select
id=
"querySkuList"
resultType=
"cn.com.uitech.authorization.pojo.entity.SuperBomSkuInfo"
>
<select
id=
"querySkuList"
resultType=
"cn.com.uitech.authorization.pojo.entity.SuperBomSkuInfo"
>
select * from super_bom_sku_info a
select * from super_bom_sku_info a
left join super_bom_sku_config_info b on a.config_id = b.config_id
<where>
<where>
<if
test=
"productClassCode!=null and productClassCode!=''.toString()"
>
<if
test=
"productClassCode!=null and productClassCode!=''.toString()"
>
a.product_class_code = #{productClassCode}
a.product_class_code = #{productClassCode}
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment