Browse Source

Merge remote-tracking branch 'origin/master'

master
yunuo970428 3 years ago
parent
commit
8bbaba4592
  1. 2
      anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/baseoutsourcingapplication/BaseOutsourcingApplicationDetailsVo.java
  2. 2
      anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/basevehicle/BaseVehicleFeign.java
  3. 6
      anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/baseaccadjapply/BaseAccadjApplyService.java
  4. 8
      anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/basemodelconfig/BaseModelConfigRest.java
  5. 4
      anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/basevehicle/BaseVehicleMapper.java
  6. 5
      anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/basevehicle/BaseVehicleService.java
  7. 2
      anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/fincollectionconfirmation/FinCollectionConfirmationFeign.java
  8. 2
      anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/kingdee/KingDeeBillId.java
  9. 13
      anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/kingdee/bdmaterial/BdMaterial.java
  10. 32
      anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/kingdee/bdmaterialcategory/BDMaterialcategory.java
  11. 25
      anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/kingdee/bdsettletype/BDSettleType.java
  12. 49
      anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/kingdee/stkinstock/StkInStock.java
  13. 2
      anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/kingdee/FinKingDeeFeignRest.java
  14. 8
      anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/kingdee/FinKingDeeService.java
  15. 43
      anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/kingdee/bdmaterial/BdMaterialService.java
  16. 44
      anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/kingdee/bdmaterialcategory/BDMaterialcategoryCastToKingDeeBillFields.java
  17. 72
      anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/kingdee/bdmaterialcategory/BDMaterialcategoryService.java
  18. 4
      anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/kingdee/bdmaterialcategory/data.json
  19. 13
      anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/kingdee/bdmaterialcategory/data_data.json
  20. 11
      anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/kingdee/bdmaterialcategory/data_model.json
  21. 48
      anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/kingdee/bdmaterialcategory/remarks.txt
  22. 23
      anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/kingdee/bdmaterialcategory/webapi测试的数据.txt
  23. BIN
      anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/kingdee/bdmaterialcategory/存货类别的参数必填备注.xlsx
  24. 44
      anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/kingdee/bdsettletype/BDSettleTypeCastToKingDeeBillFields.java
  25. 74
      anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/kingdee/bdsettletype/BDSettleTypeService.java
  26. 4
      anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/kingdee/bdsettletype/data.json
  27. 13
      anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/kingdee/bdsettletype/data_data.json
  28. 16
      anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/kingdee/bdsettletype/data_model.json
  29. 56
      anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/kingdee/bdsettletype/remarks.txt
  30. 28
      anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/kingdee/bdsettletype/webapi测试的数据.txt
  31. BIN
      anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/kingdee/bdsettletype/结算方式的参数必填备注.xlsx
  32. 4
      anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/kingdee/paezcllx/PaezCllxService.java
  33. 1
      anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/kingdee/saloutstock/data_FEntity.json
  34. 2
      anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/kingdee/stkinstock/STKInStockService.java
  35. 4
      anrui-fin/anrui-fin-biz/src/main/resources/application-dev.yml
  36. 2
      anrui-flowable/anrui-flowable-api/src/main/java/com/yxt/anrui/flowable/api/sysprourl/SysProUrlFeign.java
  37. 3
      anrui-flowable/anrui-flowable-api/src/main/java/com/yxt/anrui/flowable/api/utils/ProcDefEnum.java
  38. 2
      anrui-portal/anrui-portal-api/src/main/java/com/yxt/anrui/portal/api/sysuser/SysUserFeign.java
  39. 2
      anrui-portal/anrui-portal-api/src/main/java/com/yxt/anrui/portal/api/sysuser/SysUserQuery.java
  40. 2
      anrui-portal/anrui-portal-api/src/main/java/com/yxt/anrui/portal/api/sysuser/app/AppSysUserFeign.java
  41. 15
      anrui-portal/anrui-portal-biz/src/main/java/com/yxt/anrui/portal/biz/sysuser/SysUserService.java
  42. 2
      anrui-scm/anrui-scm-api/src/main/java/com/yxt/anrui/scm/api/scmvehicleexamine/ScmVehicleExamineFeign.java
  43. 2
      anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmvehicleenterlibrary/ScmVehicleEnterlibraryService.java
  44. 21
      anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmvehicleexamine/ScmVehicleExamineService.java
  45. 61
      anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmvehiclegression/ScmVehicleGressionService.java
  46. 198
      anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmvehiclepatrolinspectionsheet/ScmVehiclePatrolinspectionsheetService.java
  47. 159
      anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmvehinventoryreport/ScmVehInventoryreportService.java
  48. 24
      anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmvehpatrolinspectionreport/ScmVehPatrolinspectionreportService.java

2
anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/baseoutsourcingapplication/BaseOutsourcingApplicationDetailsVo.java

@ -126,6 +126,8 @@ public class BaseOutsourcingApplicationDetailsVo implements Vo {
private CommonAppendixVo contract; // 备注
@ApiModelProperty("外采车辆列表")
private List<BaseOutsourcingApplicationVehicleVo> baseOutsourcingApplicationVehicleVos; // 外采车辆列表
@ApiModelProperty("供应商sid")
private String supplierSid;
private String createBySid;
}

2
anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/basevehicle/BaseVehicleFeign.java

@ -59,7 +59,7 @@ public interface BaseVehicleFeign {
* @param pq
* @return
*/
@ApiOperation("车辆信息按照组织层级分页查询")
@ApiOperation("车辆信息按照组织层级分页查询 ")
@PostMapping("/pagerListByOrgSidPath")
public ResultBean<PagerVo<BaseVehicleVo>> pagerListByOrgSidPath(@RequestBody PagerQuery<BaseVehicleQuery> pq);

6
anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/baseaccadjapply/BaseAccadjApplyService.java

@ -399,7 +399,7 @@ public class BaseAccadjApplyService extends MybatisBaseService<BaseAccadjApplyMa
String witPinMoney = baseInternalPurchaseVehicle.getWitPinMoney();
String sid = baseInternalPurchaseVehicle.getSid();
BaseInternalPurchaseVehicle baseInternalPurchaseVehicle1 = baseInternalPurchaseVehicleService.fetchBySid(sid);
String witPinMoney1 = baseInternalPurchaseVehicle1.getWitPinMoney();
String witPinMoney1 = baseInternalPurchaseVehicle1.getInitialWitPinMoney();
if (!witPinMoney.equals(witPinMoney1)) {
i = true;
baseInternalPurchaseVehicleService.updateWitPinMoneyBySid(witPinMoney, sid);
@ -606,7 +606,7 @@ public class BaseAccadjApplyService extends MybatisBaseService<BaseAccadjApplyMa
*/
String callInOrgSid = baseAccadjApply.getCallInOrgSid();
SysOrganizationVo data = sysOrganizationFeign.fetchBySid(callInOrgSid).getData();
salOutStock.setFCustomerID(data.getOtherCode());
salOutStock.setFCustomerID(data.getOrgCode());
//salOutStock.setFCustomerID(" JXYXB");
/**
* 销售部门:FSaleDeptID (必填项)
@ -810,7 +810,7 @@ public class BaseAccadjApplyService extends MybatisBaseService<BaseAccadjApplyMa
String witPinMoney = baseInternalPurchaseVehicle.getWitPinMoney();
String sid = baseInternalPurchaseVehicle.getSid();
BaseInternalPurchaseVehicle baseInternalPurchaseVehicle1 = baseInternalPurchaseVehicleService.fetchBySid(sid);
String witPinMoney1 = baseInternalPurchaseVehicle1.getWitPinMoney();
String witPinMoney1 = baseInternalPurchaseVehicle1.getInitialWitPinMoney();
if (!witPinMoney.equals(witPinMoney1)) {
i = true;
break;

8
anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/basemodelconfig/BaseModelConfigRest.java

@ -166,9 +166,11 @@ public class BaseModelConfigRest implements BaseModelConfigFeign {
entity.setConfigName(configName);
configName += dto.getOtherConfig();
List<String> stringList = baseModelConfigService.checkByConfigName(sid);
for (String s : stringList) {
if (s.equals(configName)){
return rb.setMsg("该常用配置已存在");
if (stringList != null || stringList.size() > 0){
for (String s : stringList) {
if (configName.equals(s)){
return rb.setMsg("该常用配置已存在");
}
}
}
entity.setCreateOrgSId(sid);

4
anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/basevehicle/BaseVehicleMapper.java

@ -445,8 +445,8 @@ public interface BaseVehicleMapper extends BaseMapper<BaseVehicle> {
IPage<BaseVehicleRebateVo> vehicleRebatePageList(IPage<BaseVehicleRebateVo> page, @Param(Constants.WRAPPER) QueryWrapper<BaseVehicle> qw);
@Update("update base_vehicle set vehicleState = #{vehicleState},vehicleStateValue = #{vehicleStateValue} where vinNo = #{vinNo}")
void updateCallOutVehicleState(@Param("vehicleState") String vehicleState, @Param("vehicleStateValue") String vehicleStateValue, @Param("vinNo") String vinNo);
@Update("update base_vehicle set vehicleState = #{vehicleState},vehicleStateValue = #{vehicleStateValue},salePrice = #{salePrice} where vinNo = #{vinNo}")
void updateCallOutVehicleState(@Param("vehicleState") String vehicleState, @Param("vehicleStateValue") String vehicleStateValue,@Param("salePrice") Integer salePrice, @Param("vinNo") String vinNo);
@Update("update base_vehicle set vinNo = #{vinNo} where sid = #{vehicleSid}")
void updateVinNoByVehSid(@Param("vinNo") String vinNo, @Param("vehicleSid") String vehicleSid);

5
anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/basevehicle/BaseVehicleService.java

@ -2342,8 +2342,8 @@ public class BaseVehicleService extends MybatisBaseService<BaseVehicleMapper, Ba
return rb.setMsg("参数错误");
}
//调出分公司车辆台账更新库存状态
baseMapper.updateCallOutVehicleState(VehicleState.StockEnum.DC_STOCK.getCode(), VehicleState.StockEnum.DC_STOCK.getRemarks(), baseVehicle.getVinNo());
//调出分公司车辆台账更新库存状态和销售成交价
baseMapper.updateCallOutVehicleState(VehicleState.StockEnum.DC_STOCK.getCode(), VehicleState.StockEnum.DC_STOCK.getRemarks(),baseVehicle.getSalePrice(), baseVehicle.getVinNo());
//新建调入分公司车辆台账,设置调入分公司sid
BaseVehicle new_baseVehicle = new BaseVehicle();
@ -2354,6 +2354,7 @@ public class BaseVehicleService extends MybatisBaseService<BaseVehicleMapper, Ba
baseVehicle.setCreateBySid(null);
copyBeanToBean(baseVehicle, new_baseVehicle);
new_baseVehicle.setSalePrice(null);
//BeanUtil.copyProperties(baseVehicle, new_baseVehicle, new CopyOptions().setIgnoreNullValue(true));
//调车状态
//new_baseVehicle.setWitPinState(VehicleState.ShuntingEnum.WITPURCHASE.getCode());

2
anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/fincollectionconfirmation/FinCollectionConfirmationFeign.java

@ -55,7 +55,7 @@ import org.springframework.web.bind.annotation.*;
fallback = FinCollectionConfirmationFeignFallback.class)
public interface FinCollectionConfirmationFeign {
@ApiOperation("根据条件分页查询数据的列表")
@ApiOperation("根据条件分页查询数据的列表 ")
@PostMapping("/listPage")
public ResultBean<PagerVo<FinCollectionConfirmationVo>> listPage(@RequestBody PagerQuery<FinCollectionConfirmationQuery> pq);

2
anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/kingdee/KingDeeBillId.java

@ -16,6 +16,8 @@ public enum KingDeeBillId {
BD_BANK("BD_BANK","银行"),
CN_BANKACNT("CN_BANKACNT","银行账号"),
PAEZ_CLLX("PAEZ_CLLX","车辆类型"),
BD_MATERIALCATEGORY("BD_MATERIALCATEGORY","存货类别"),
BD_SETTLETYPE("BD_SETTLETYPE","结算方式"),
CN_RECPAYPURPOSE("CN_RECPAYPURPOSE","收付款用途"),
BD_STOCK("BD_STOCK","仓库");
private String ID;

13
anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/kingdee/bdmaterial/BdMaterial.java

@ -77,6 +77,12 @@ public class BdMaterial {
*/
@JsonProperty("FDescription")
public String FDescription="";
@NotBlank(message = "存货类别:FCategoryIDKey ")
@JsonProperty("FCategoryIDKey")
public String FCategoryIDKey;
@NotBlank(message = "存货类别:FCategoryIDType")
@JsonProperty("FCategoryIDType")
public String FCategoryIDType;
/**
*创建组织:FCreateOrgId (必填项)
*/
@ -93,12 +99,7 @@ public class BdMaterial {
/*@NotBlank(message = "存货类别:FCategoryID ")
@JsonProperty("FCategoryID")
public String FCategoryID;*/
@NotBlank(message = "存货类别:FCategoryIDKey ")
@JsonProperty("FCategoryIDKey")
public String FCategoryIDKey;
@NotBlank(message = "存货类别:FCategoryIDType")
@JsonProperty("FCategoryIDType")
public String FCategoryIDType;
public final static BdMaterial bdMaterial = new BdMaterial();
static {
/**

32
anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/kingdee/bdmaterialcategory/BDMaterialcategory.java

@ -0,0 +1,32 @@
package com.yxt.anrui.fin.api.kingdee.bdmaterialcategory;
import com.fasterxml.jackson.annotation.JsonProperty;
import lombok.Data;
import javax.validation.constraints.NotBlank;
/**
* 存货类别
*/
@Data
public class BDMaterialcategory {
/* 名称:FName (必填项)*/
@JsonProperty("FName")
@NotBlank(message = "FName不能为空")
public String FName;
/*编码:FNumber (必填项)*/
@JsonProperty("FNumber")
@NotBlank(message = "FNumber不能为空")
public String FNumber;
/*使用组织:FUseOrgId (必填项)*/
@JsonProperty("FUseOrgId")
@NotBlank(message = "FUseOrgId不能为空")
public String FUseOrgId;
/*创建组织:FCreateOrgId (必填项)*/
@JsonProperty("FCreateOrgId")
@NotBlank(message = "FCreateOrgId不能为空")
public String FCreateOrgId;
/*描述:FDescription*/
@JsonProperty("FDescription")
public String FDescription;
}

25
anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/kingdee/bdsettletype/BDSettleType.java

@ -0,0 +1,25 @@
package com.yxt.anrui.fin.api.kingdee.bdsettletype;
import com.fasterxml.jackson.annotation.JsonProperty;
import lombok.Data;
import javax.validation.constraints.NotBlank;
/**
* 结算方式
*/
@Data
public class BDSettleType {
/*业务分类:FTYPE (必填项)*/
@JsonProperty("FTYPE")
@NotBlank(message = "FTYPE不能为空")
public String FTYPE;
/*结算方式类别:FSETTLECATEGORY (必填项)*/
@JsonProperty("FSETTLECATEGORY")
@NotBlank(message = "FSETTLECATEGORY不能为空")
public String FSETTLECATEGORY;
/*名称:FName (必填项)*/
@JsonProperty("FName")
@NotBlank(message = "FName不能为空")
public String FName;
}

49
anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/kingdee/stkinstock/StkInStock.java

@ -105,30 +105,6 @@ public class StkInStock {
@NotBlank(message = "FMaterialId不能为空")
public String FMaterialId;
/**
* // 库存单位:FUnitID (必填项)
*///@JsonProperty("FUnitID")
//@NotBlank
//public String FUnitID="liang";
/**
* // 实收数量:FRealQty
*///@JsonProperty("FRealQty")
//@NotBlank
//public double FRealQty;
/**
* // 计价数量:FPriceUnitQty
*///@JsonProperty("FPriceUnitQty")
// @NotBlank
// public String FPriceUnitQty;
/**
* // 采购数量:FRemainInStockQty
*///@JsonProperty("FRemainInStockQty")
// @NotBlank
//public double FRemainInStockQty;
/**
* // 批号:FLot
*/
@ -159,6 +135,31 @@ public class StkInStock {
@JsonProperty("FNote")
public String FNote="";
/**
* // 库存单位:FUnitID (必填项)
*///@JsonProperty("FUnitID")
//@NotBlank
//public String FUnitID="liang";
/**
* // 实收数量:FRealQty
*///@JsonProperty("FRealQty")
//@NotBlank
//public double FRealQty;
/**
* // 计价数量:FPriceUnitQty
*///@JsonProperty("FPriceUnitQty")
// @NotBlank
// public String FPriceUnitQty;
/**
* // 采购数量:FRemainInStockQty
*///@JsonProperty("FRemainInStockQty")
// @NotBlank
//public double FRemainInStockQty;
}
public final static StkInStock stkInStock = new StkInStock();

2
anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/kingdee/FinKingDeeFeignRest.java

@ -264,7 +264,7 @@ public class FinKingDeeFeignRest implements FinKingDeeFeign {
return cnBankcntService.draftCNBankcnt(cNBankacnt);//bdCustomerService;//bdCustomerService.getKingBillDataInfoList("","");
}
@ApiOperation("暂存银行账号的接口")
@ApiOperation("暂存收付款用途的接口")
@PostMapping("/draftCNRecpaypurpose")
@ResponseBody
@Override

8
anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/kingdee/FinKingDeeService.java

@ -1,5 +1,6 @@
package com.yxt.anrui.fin.biz.kingdee;
import cn.hutool.json.JSONString;
import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.JSONObject;
import com.yxt.anrui.fin.api.kingdee.KingDeeBillId;
@ -172,7 +173,7 @@ public class FinKingDeeService {
}
public String getUnAuditKD(String s, String id) {
// "{\"formId\":\""+formId+"\",\"data\":\"{\\\"CreateOrgId\\\":\\\"\\\",\\\"Numbers\\\":[],\\\"Ids\\\":\\\""+s+"\\\",\\\"InterationFlags\\\":\\\"\\\"}\"}";
// "{\"formId\":\""+formId+"\",\"data\":\"{\\\"CreateOrgId\\\":\\\"\\\",\\\"Numbers\\\":[],\\\"Ids\\\":\\\""+s+"\\\",\\\"InterationFlags\\\":\\\"\\\"}\"}";
return"{\"formId\":\""+ id+"\",\"data\":\"{\\\"CreateOrgId\\\":\\\"\\\",\\\"Numbers\\\":[],\\\"Ids\\\":\\\""+s+"\\\",\\\"InterationFlags\\\":\\\"\\\"}\"}";
}
public String getSubmitKD(String data,String formId) {
@ -251,7 +252,10 @@ public class FinKingDeeService {
*/
public ResultBean< String> setMappingInfosParams(Map<String, String> map_fEntityModel_, Map<String, Object> data,List<KeyItem> kis){
ResultBean< String> rb=ResultBean.fireFail();
log.info("setMappingInfosParams.data:{}", JSONObject.toJSONString(data));
for(Map.Entry<String, Object> entry : data.entrySet()){
log.info("setMappingInfosParams.entry:{}",JSONObject.toJSONString(entry));
log.info("setMappingInfosParams.data.entrySet():{}",JSONObject.toJSONString(entry));
Object value = entry.getValue();
if(value==null){
log.info("物料映射表不存在值!");
@ -262,6 +266,7 @@ public class FinKingDeeService {
JSONObject s= (JSONObject) jsonArray.get(i);
Object map_item = s.get("map_item");
Object map_itemKey = s.get("map_itemKey");
Object map_itemValue = s.get("map_itemValue");
if(map_item==null|| map_itemKey==null){
log.info("物料映射表不存在值!");
return rb.setMsg("物料映射表不存在值!");
@ -269,6 +274,7 @@ public class FinKingDeeService {
kis.forEach(keyItem -> {
if(map_item.equals(keyItem.getItem())){
map_fEntityModel_.put(keyItem.getKey(),map_itemKey.toString());
map_fEntityModel_.put(keyItem.getKey()+"Name",map_itemValue.toString());
}
});
}

43
anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/kingdee/bdmaterial/BdMaterialService.java

@ -1,19 +1,17 @@
package com.yxt.anrui.fin.biz.kingdee.bdmaterial;
import cn.hutool.core.bean.BeanUtil;
import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.JSONObject;
import com.yxt.anrui.fin.api.kingdee.KingDeeBillId;
import com.yxt.anrui.fin.api.kingdee.KingDeeBillUrl;
import com.yxt.anrui.fin.api.kingdee.KingDeeCode;
import com.yxt.anrui.fin.api.kingdee.bank.BDBank;
import com.yxt.anrui.fin.api.kingdee.bdmaterial.BdMaterial;
import com.yxt.anrui.fin.api.kingdee.bdmaterialcategory.BDMaterialcategory;
import com.yxt.anrui.fin.api.kingdee.paezcllx.PaezCllx;
import com.yxt.anrui.fin.biz.kingdee.FinKingDeeService;
import com.yxt.anrui.fin.biz.kingdee.KingDeeConfig;
import com.yxt.anrui.fin.biz.kingdee.bdmaterialcategory.BDMaterialcategoryService;
import com.yxt.anrui.fin.biz.kingdee.paezcllx.PaezCllxService;
import com.yxt.anrui.portal.api.dictcommon.DictCommonFeign;
import com.yxt.anrui.portal.api.sysmapping.SysMappingInfoQueryBatch;
import com.yxt.common.base.utils.StringUtils;
import com.yxt.common.core.result.ResultBean;
@ -34,6 +32,8 @@ public class BdMaterialService extends FinKingDeeService {
private static Logger log= LoggerFactory.getLogger(BdMaterialService.class);
@Autowired
private PaezCllxService paezCllxService;
@Autowired
private BDMaterialcategoryService bDMaterialcategoryService;
/**
* 批量暂存物料 list
* @param bdMaterials
@ -139,20 +139,32 @@ public class BdMaterialService extends FinKingDeeService {
try {
//车辆类型
String F_PAEZ_Base = map_fEntityModel_.get("F_PAEZ_Base");
JSONObject result = view(F_PAEZ_Base);
log.info(JSONObject.toJSONString(result));
Object result1 = result.get("Result");
if(result1==null){
JSONObject result_F_PAEZ_Base = view(KingDeeBillId.PAEZ_CLLX.getID(),F_PAEZ_Base);
log.info(JSONObject.toJSONString(result_F_PAEZ_Base));
if(result_F_PAEZ_Base.get("Result")==null){
PaezCllx p=new PaezCllx();
String TOrgIds = map_fEntityModel_.get("TOrgIds");
p.setFUseOrgId(TOrgIds);
p.setFCreateOrgId(TOrgIds);
String F_PAEZ_BaseName = map_fEntityModel_.get("F_PAEZ_BaseName");
p.setFName(F_PAEZ_BaseName);
String F_PAEZ_BaseKey = map_fEntityModel_.get("F_PAEZ_BaseKey");
p.setFNumber(F_PAEZ_BaseKey);
p.setFNumber(F_PAEZ_Base);
paezCllxService.draftPaezCllx(p);
}
//存货类别
String FCategoryID = map_fEntityModel_.get("FCategoryID");
JSONObject result_FCategory = view(KingDeeBillId.BD_MATERIALCATEGORY.getID(),FCategoryID);
log.info(JSONObject.toJSONString(result_FCategory));
if(result_FCategory.get("Result")==null){
BDMaterialcategory b=new BDMaterialcategory();
String TOrgIds = map_fEntityModel_.get("TOrgIds");
b.setFUseOrgId(TOrgIds);
b.setFCreateOrgId(TOrgIds);
String F_PAEZ_BaseName = map_fEntityModel_.get("FCategoryIDName");
b.setFName(F_PAEZ_BaseName);
b.setFNumber(FCategoryID);
bDMaterialcategoryService.draftBDMaterialcategory(b);
}
ResultBean<String> draft = draft(kingDeeData);
String data = draft.getData();
ResultBean<String> submit = submitAuditAllocate(data);
@ -335,7 +347,7 @@ public class BdMaterialService extends FinKingDeeService {
*/
public ResultBean<String> unAudit(BdMaterial bdMaterial) throws Exception {
ResultBean<String> rb=ResultBean.fireFail();
JSONObject result = view(bdMaterial.getOldFName());
JSONObject result = viewBdMaterial(KingDeeBillId.BD_MATERIAL.getID(),bdMaterial.getOldFName());
JSONObject responseStatus = (JSONObject)result.get("ResponseStatus");
if(responseStatus!=null){//不存在该物料 //新增物料
return rb.setCode(KingDeeCode.NOTEXIST.getCode()).setMsg(KingDeeCode.NOTEXIST.getMsg());
@ -354,13 +366,18 @@ public class BdMaterialService extends FinKingDeeService {
/**
* 查看物料
* @param formid
* @param oldFName
* @return
* @throws Exception
*/
private JSONObject view(String oldFName) throws Exception {
private JSONObject viewBdMaterial(String formid,String oldFName) throws Exception {
String getKDForNumbers = getGetKDForNumbers(KingDeeBillId.BD_MATERIAL.getID(), oldFName);
ResultBean<String> kingDataInfoByNumber = accessKingDeeInterface(KingDeeBillId.BD_MATERIAL.getID(), getKDForNumbers,
return view(formid,getKDForNumbers);
}
private JSONObject view(String formid,String getKDForNumbers) throws Exception {
ResultBean<String> kingDataInfoByNumber = accessKingDeeInterface(formid, getKDForNumbers,
KingDeeConfig.userName_administrator,KingDeeConfig.password_administrator, KingDeeBillUrl.VIEW_URL.getURL());
log.info("kingDataInfoByNumber:{}",kingDataInfoByNumber.getData());
JSONObject jsonObject = JSONObject.parseObject(kingDataInfoByNumber.getData().toString());

44
anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/kingdee/bdmaterialcategory/BDMaterialcategoryCastToKingDeeBillFields.java

@ -0,0 +1,44 @@
package com.yxt.anrui.fin.biz.kingdee.bdmaterialcategory;
import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONObject;
import com.alibaba.fastjson.parser.Feature;
import com.yxt.anrui.fin.biz.kingdee.KingDeeUtils;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import java.util.Map;
/**
* 封装转换的类
*/
public class BDMaterialcategoryCastToKingDeeBillFields {
private static Logger log=LoggerFactory.getLogger(BDMaterialcategoryCastToKingDeeBillFields.class);
/**
* 构造金蝶需要的数据结构 并对字段赋值
*
* @param map_fEntityModel_
* @return
*/
public static String getKingDeeData(Map<String,String> map_fEntityModel_ ){
/**
* 取模板
*/
String readJsonFile = KingDeeUtils.readJsonFile("com/yxt/anrui/fin/biz/kingdee/bdmaterialcategory/data.json");
String fEntityData_ = KingDeeUtils.readJsonFile("com/yxt/anrui/fin/biz/kingdee/bdmaterialcategory/data_data.json");
String fEntityModel_ = KingDeeUtils.readJsonFile("com/yxt/anrui/fin/biz/kingdee/bdmaterialcategory/data_model.json");
log.info("readJsonFile:{}",readJsonFile);
log.info("fEntityData_:{}",fEntityData_);
log.info("fEntityModel_:{}",fEntityModel_);
//模板字符创转json
JSONObject jsonObj= JSONObject.parseObject(readJsonFile, Feature.OrderedField);
JSONObject jsonFEntityData_= JSONObject.parseObject(fEntityData_,Feature.OrderedField);
fEntityModel_ =KingDeeUtils.replaceTemplateParams(fEntityModel_, map_fEntityModel_);
JSONObject jsonFEntityModel_= JSONObject.parseObject(fEntityModel_,Feature.OrderedField);
jsonFEntityData_.put("Model",JSONObject.parseObject(JSON.toJSONString(jsonFEntityModel_),Feature.OrderedField));
jsonObj.put("data",jsonFEntityData_.toJSONString());
return jsonObj.toJSONString();
}
}

72
anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/kingdee/bdmaterialcategory/BDMaterialcategoryService.java

@ -0,0 +1,72 @@
package com.yxt.anrui.fin.biz.kingdee.bdmaterialcategory;
import com.yxt.anrui.fin.api.kingdee.KingDeeBillId;
import com.yxt.anrui.fin.api.kingdee.KingDeeBillUrl;
import com.yxt.anrui.fin.api.kingdee.KingDeeResult;
import com.yxt.anrui.fin.api.kingdee.bdmaterialcategory.BDMaterialcategory;
import com.yxt.anrui.fin.biz.kingdee.FinKingDeeService;
import com.yxt.common.core.result.ResultBean;
import org.springframework.stereotype.Service;
import java.util.ArrayList;
import java.util.List;
import java.util.Map;
@Service
public class BDMaterialcategoryService extends FinKingDeeService {
/**
* 保存存货类别信息 list
* @param bDMaterialcategory
* @return
*/
public ResultBean<List<KingDeeResult>> draftBDMaterialcategoryList(List<BDMaterialcategory> bDMaterialcategory) {
List<KingDeeResult> list=new ArrayList<>();
ResultBean rb=ResultBean.fireFail();
for(BDMaterialcategory p:bDMaterialcategory) {
ResultBean<List<KingDeeResult>> resultBean = draftBDMaterialcategory(p);
if (resultBean.getSuccess()) {
list.add(resultBean.getData().get(0));
}
}
return rb.success().setData(list);
}
/**
* 保存存货类别信息
* @param bDMaterialcategory
* @return
*/
public ResultBean draftBDMaterialcategory(BDMaterialcategory bDMaterialcategory) {
//bdCustomer=BdCustomer.createBdCustomer();
ResultBean rb=ResultBean.fireFail();
try {
//业务表的主表数据集合
Map<String,String> map_fEntityModel_= object2Map(bDMaterialcategory);
//准备 物料列表的数据 ForEntryBill
String kingDeeData = BDMaterialcategoryCastToKingDeeBillFields.getKingDeeData(map_fEntityModel_);
ResultBean<String> resultBean = accessKingDeeInterface(
KingDeeBillId.BD_MATERIALCATEGORY.getID(), kingDeeData, KingDeeBillUrl.DRAFT_URL.getURL());
String submitKD = getSubmitKD(resultBean.getData(),KingDeeBillId.BD_MATERIALCATEGORY.getID());
ResultBean<String> resultBean1 = accessKingDeeInterface(KingDeeBillId.BD_MATERIALCATEGORY.getID(),
submitKD,KingDeeBillUrl.SUBMIT_URL.getURL());
if(!resultBean1.getSuccess()){
log.info("存货类别提交失败!");
return rb.setMsg("存货类别提交失败!");
}
log.info("存货类别提交成功!");
String auditKD = getAuditKD(resultBean.getData(),KingDeeBillId.BD_MATERIALCATEGORY.getID());
ResultBean<String> resultBean2 = accessKingDeeInterface(KingDeeBillId.BD_MATERIALCATEGORY.getID(), auditKD,KingDeeBillUrl.AUDIT_URL.getURL());
if(!resultBean2.getSuccess()){
log.info("存货类别审核失败!");
return rb.setMsg("存货类别审核失败!");
}
log.info("存货类别审核成功!");
return resultBean;
} catch (Exception e) {
e.printStackTrace();
}
return rb;
}
}

4
anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/kingdee/bdmaterialcategory/data.json

@ -0,0 +1,4 @@
{
"formId": "BD_MATERIALCATEGORY",
"data": "@KD_data"
}

13
anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/kingdee/bdmaterialcategory/data_data.json

@ -0,0 +1,13 @@
{
"Creator": "",
"NeedUpDateFields": [],
"NeedReturnFields": [],
"IsDeleteEntry": "True",
"SubSystemId": "",
"IsVerifyBaseDataField": "false",
"IsEntryBatchFill": "True",
"ValidateFlag": "True",
"NumberSearch": "True",
"InterationFlags": "",
"Model":{}
}

11
anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/kingdee/bdmaterialcategory/data_model.json

@ -0,0 +1,11 @@
{
"FCATEGORYID": 0,
"FNumber": "@KD_FNumber",
"FName": "@KD_FName",
"FCreateOrgId": {
"FNumber": "@KD_FCreateOrgId"
},
"FUseOrgId": {
"FNumber": "@KD_FCreateOrgId"
}
}

48
anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/kingdee/bdmaterialcategory/remarks.txt

@ -0,0 +1,48 @@
一、请求参数说明:
1.formid:业务对象表单Id,字符串类型(必录)
2.data:Json格式数据(详情参考Json格式数据)(必录)
2.1.Creator:创建者内码(非必录)
2.2.NeedUpDateFields:需要更新的字段,数组类型,格式:[key1,key2,...](非必录),注(更新单据体字段得加上单据体key)
2.3.NeedReturnFields:需返回结果的字段集合,数组类型,格式:[key,entitykey.key,...](非必录),注(返回单据体字段格式:entitykey.key)
2.4.IsDeleteEntry:是否删除已存在的分录,布尔类型,默认true(非必录)
2.5.SubSystemId:表单所在的子系统内码,字符串类型(非必录)
2.6.IsVerifyBaseDataField:是否验证所有的基础资料有效性,布尔类,默认false(非必录)
2.7.IsEntryBatchFill:是否批量填充分录,默认true(非必录)
2.8.ValidateFlag:是否验证标志,布尔类型,默认true(非必录)
2.9.NumberSearch:是否用编码搜索基础资料,布尔类型,默认true(非必录)
2.10.InterationFlags:交互标志集合,字符串类型,分号分隔,格式:"flag1;flag2;..."(非必录),例如(允许负库存标识:STK_InvCheckResult)
2.11.Model:表单数据包,Json类型(必录)
二、Json格式数据:
{\"Creator\":\"\",\"NeedUpDateFields\":[],\"NeedReturnFields\":[],\"IsDeleteEntry\":\"True\",\"SubSystemId\":\"\",\"IsVerifyBaseDataField\":\"false\",\"IsEntryBatchFill\":\"True\",\"ValidateFlag\":\"True\",\"NumberSearch\":\"True\",\"InterationFlags\":\"\",\"Model\":{\"FCATEGORYID\":\"0\",\"FDescription\":\"\",\"FNumber\":\"\",\"FName\":\"\",\"FCreateOrgId\":{\"FNumber\":\"\"},\"FUseOrgId\":{\"FNumber\":\"\"},\"FForbidderId\":{\"FUserID\":\"\"},\"FForbidDate\":\"1900-01-01\"}}
三、返回参数:
{\"Result\":{\"ResponseStatus\":{\"ErrorCode\":\"\",\"IsSuccess\":\"false\",\"Errors\":[{\"FieldName\":\"\",\"Message\":\"\",\"DIndex\":0}],\"SuccessEntitys\":[{\"Id\":\"\",\"Number\":\"\",\"DIndex\":0}],\"SuccessMessages\":[{\"FieldName\":\"\",\"Message\":\"\",\"DIndex\":0}]},\"Id\":\"\",\"NeedReturnData\":[{}]}}
四、代码示例:
// 使用webapi引用组件Kingdee.BOS.WebApi.Client.dll
K3CloudApiClient client = new K3CloudApiClient("http://121.36.43.55/k3cloud/");
var ret = client.ValidateLogin("61dce6601125a0","Administrator","888888",2052);
var result = JObject.Parse(ret)["LoginResultType"].Value<int>();
// 登陆成功
if (result == 1)
{
client.Draft("BD_MATERIALCATEGORY","{\"Creator\":\"\",\"NeedUpDateFields\":[],\"NeedReturnFields\":[],\"IsDeleteEntry\":\"True\",\"SubSystemId\":\"\",\"IsVerifyBaseDataField\":\"false\",\"IsEntryBatchFill\":\"True\",\"ValidateFlag\":\"True\",\"NumberSearch\":\"True\",\"InterationFlags\":\"\",\"Model\":{\"FCATEGORYID\":\"0\",\"FDescription\":\"\",\"FNumber\":\"\",\"FName\":\"\",\"FCreateOrgId\":{\"FNumber\":\"\"},\"FUseOrgId\":{\"FNumber\":\"\"},\"FForbidderId\":{\"FUserID\":\"\"},\"FForbidDate\":\"1900-01-01\"}}");
}
五、字段说明:
修改日期:FModifyDate
创建日期:FCreateDate
修改人:FModifierId
审核人:FApproverId
禁用日期:FForbidDate
禁用人:FForbidderId
审核日期:FApproveDate
创建人:FCreatorId
名称:FName (必填项)
禁用状态:FForbidStatus
数据状态:FDocumentStatus
编码:FNumber (必填项)
使用组织:FUseOrgId (必填项)
创建组织:FCreateOrgId (必填项)
描述:FDescription

23
anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/kingdee/bdmaterialcategory/webapi测试的数据.txt

@ -0,0 +1,23 @@
{
"Creator": "",
"NeedUpDateFields": [],
"NeedReturnFields": [],
"IsDeleteEntry": "True",
"SubSystemId": "",
"IsVerifyBaseDataField": "false",
"IsEntryBatchFill": "True",
"ValidateFlag": "True",
"NumberSearch": "True",
"InterationFlags": "",
"Model": {
"FCATEGORYID": 0,
"FNumber": "9876543211",
"FName": "9876543211",
"FCreateOrgId": {
"FNumber": "101"
},
"FUseOrgId": {
"FNumber": "101"
}
}
}

BIN
anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/kingdee/bdmaterialcategory/存货类别的参数必填备注.xlsx

Binary file not shown.

44
anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/kingdee/bdsettletype/BDSettleTypeCastToKingDeeBillFields.java

@ -0,0 +1,44 @@
package com.yxt.anrui.fin.biz.kingdee.bdsettletype;
import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONObject;
import com.alibaba.fastjson.parser.Feature;
import com.yxt.anrui.fin.biz.kingdee.KingDeeUtils;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import java.util.Map;
/**
* 封装转换的类
*/
public class BDSettleTypeCastToKingDeeBillFields {
private static Logger log=LoggerFactory.getLogger(BDSettleTypeCastToKingDeeBillFields.class);
/**
* 构造金蝶需要的数据结构 并对字段赋值
*
* @param map_fEntityModel_
* @return
*/
public static String getKingDeeData(Map<String,String> map_fEntityModel_ ){
/**
* 取模板
*/
String readJsonFile = KingDeeUtils.readJsonFile("com/yxt/anrui/fin/biz/kingdee/bdsettletype/data.json");
String fEntityData_ = KingDeeUtils.readJsonFile("com/yxt/anrui/fin/biz/kingdee/bdsettletype/data_data.json");
String fEntityModel_ = KingDeeUtils.readJsonFile("com/yxt/anrui/fin/biz/kingdee/bdsettletype/data_model.json");
log.info("readJsonFile:{}",readJsonFile);
log.info("fEntityData_:{}",fEntityData_);
log.info("fEntityModel_:{}",fEntityModel_);
//模板字符创转json
JSONObject jsonObj= JSONObject.parseObject(readJsonFile, Feature.OrderedField);
JSONObject jsonFEntityData_= JSONObject.parseObject(fEntityData_,Feature.OrderedField);
fEntityModel_ =KingDeeUtils.replaceTemplateParams(fEntityModel_, map_fEntityModel_);
JSONObject jsonFEntityModel_= JSONObject.parseObject(fEntityModel_,Feature.OrderedField);
jsonFEntityData_.put("Model",JSONObject.parseObject(JSON.toJSONString(jsonFEntityModel_),Feature.OrderedField));
jsonObj.put("data",jsonFEntityData_.toJSONString());
return jsonObj.toJSONString();
}
}

74
anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/kingdee/bdsettletype/BDSettleTypeService.java

@ -0,0 +1,74 @@
package com.yxt.anrui.fin.biz.kingdee.bdsettletype;
import com.yxt.anrui.fin.api.kingdee.KingDeeBillId;
import com.yxt.anrui.fin.api.kingdee.KingDeeBillUrl;
import com.yxt.anrui.fin.api.kingdee.KingDeeResult;
import com.yxt.anrui.fin.api.kingdee.bdmaterialcategory.BDMaterialcategory;
import com.yxt.anrui.fin.api.kingdee.bdsettletype.BDSettleType;
import com.yxt.anrui.fin.biz.kingdee.FinKingDeeService;
import com.yxt.common.core.result.ResultBean;
import org.springframework.stereotype.Service;
import java.util.ArrayList;
import java.util.List;
import java.util.Map;
@Service
public class BDSettleTypeService extends FinKingDeeService {
/**
* 保存结算方式信息 list
* @param bDSettleType
* @return
*/
public ResultBean<List<KingDeeResult>> draftBDSettleTypeList(List<BDSettleType> bDSettleType) {
List<KingDeeResult> list=new ArrayList<>();
ResultBean rb=ResultBean.fireFail();
for(BDSettleType p:bDSettleType) {
ResultBean<List<KingDeeResult>> resultBean = draftBDSettleType(p);
if (resultBean.getSuccess()) {
list.add(resultBean.getData().get(0));
}
}
return rb.success().setData(list);
}
/**
* 保存结算方式信息
* @param bDSettleType
* @return
*/
public ResultBean draftBDSettleType(BDSettleType bDSettleType) {
//bdCustomer=BdCustomer.createBdCustomer();
ResultBean rb=ResultBean.fireFail();
try {
//业务表的主表数据集合
Map<String,String> map_fEntityModel_= object2Map(bDSettleType);
//准备 物料列表的数据 ForEntryBill
String kingDeeData = BDSettleTypeCastToKingDeeBillFields.getKingDeeData(map_fEntityModel_);
ResultBean<String> resultBean = accessKingDeeInterface(
KingDeeBillId.BD_SETTLETYPE.getID(), kingDeeData, KingDeeBillUrl.DRAFT_URL.getURL());
String submitKD = getSubmitKD(resultBean.getData(),KingDeeBillId.BD_SETTLETYPE.getID());
ResultBean<String> resultBean1 = accessKingDeeInterface(KingDeeBillId.BD_SETTLETYPE.getID(),
submitKD,KingDeeBillUrl.SUBMIT_URL.getURL());
if(!resultBean1.getSuccess()){
log.info("结算方式提交失败!");
return rb.setMsg("结算方式提交失败!");
}
log.info("结算方式提交成功!");
String auditKD = getAuditKD(resultBean.getData(),KingDeeBillId.BD_SETTLETYPE.getID());
ResultBean<String> resultBean2 = accessKingDeeInterface(KingDeeBillId.BD_SETTLETYPE.getID(),
auditKD,KingDeeBillUrl.AUDIT_URL.getURL());
if(!resultBean2.getSuccess()){
log.info("结算方式审核失败!");
return rb.setMsg("结算方式审核失败!");
}
log.info("结算方式审核成功!");
return resultBean;
} catch (Exception e) {
e.printStackTrace();
}
return rb;
}
}

4
anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/kingdee/bdsettletype/data.json

@ -0,0 +1,4 @@
{
"formId": "BD_SETTLETYPE",
"data": "@KD_data"
}

13
anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/kingdee/bdsettletype/data_data.json

@ -0,0 +1,13 @@
{
"Creator": "",
"NeedUpDateFields": [],
"NeedReturnFields": [],
"IsDeleteEntry": "True",
"SubSystemId": "",
"IsVerifyBaseDataField": "false",
"IsEntryBatchFill": "True",
"ValidateFlag": "True",
"NumberSearch": "True",
"InterationFlags": "",
"Model": {}
}

16
anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/kingdee/bdsettletype/data_model.json

@ -0,0 +1,16 @@
{
"FID": 0,
"FCreateOrgId": {
"FNumber": "@KD_FCreateOrgId"
},
"FUseOrgId": {
"FNumber": "@KD_FCreateOrgId"
},
"FNumber": "@KD_FNumber",
"FName": "@KD_FName",
"FSETTLECATEGORY": "2",
"FTYPE": "1",
"FISNEEDPAYCHARGE": false,
"FISDEFAULT": false,
"FIsSupBankPay": false
}

56
anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/kingdee/bdsettletype/remarks.txt

@ -0,0 +1,56 @@
一、请求参数说明:
1.formid:业务对象表单Id,字符串类型(必录)
2.data:Json格式数据(详情参考Json格式数据)(必录)
2.1.Creator:创建者内码(非必录)
2.2.NeedUpDateFields:需要更新的字段,数组类型,格式:[key1,key2,...](非必录),注(更新单据体字段得加上单据体key)
2.3.NeedReturnFields:需返回结果的字段集合,数组类型,格式:[key,entitykey.key,...](非必录),注(返回单据体字段格式:entitykey.key)
2.4.IsDeleteEntry:是否删除已存在的分录,布尔类型,默认true(非必录)
2.5.SubSystemId:表单所在的子系统内码,字符串类型(非必录)
2.6.IsVerifyBaseDataField:是否验证所有的基础资料有效性,布尔类,默认false(非必录)
2.7.IsEntryBatchFill:是否批量填充分录,默认true(非必录)
2.8.ValidateFlag:是否验证标志,布尔类型,默认true(非必录)
2.9.NumberSearch:是否用编码搜索基础资料,布尔类型,默认true(非必录)
2.10.InterationFlags:交互标志集合,字符串类型,分号分隔,格式:"flag1;flag2;..."(非必录),例如(允许负库存标识:STK_InvCheckResult)
2.11.Model:表单数据包,Json类型(必录)
二、Json格式数据:
{\"Creator\":\"\",\"NeedUpDateFields\":[],\"NeedReturnFields\":[],\"IsDeleteEntry\":\"True\",\"SubSystemId\":\"\",\"IsVerifyBaseDataField\":\"false\",\"IsEntryBatchFill\":\"True\",\"ValidateFlag\":\"True\",\"NumberSearch\":\"True\",\"InterationFlags\":\"\",\"Model\":{\"FID\":\"0\",\"FCreateOrgId\":{\"FNumber\":\"\"},\"FUseOrgId\":{\"FNumber\":\"\"},\"FNumber\":\"\",\"FName\":\"\",\"FSETTLECATEGORY\":\"\",\"FTYPE\":\"\",\"FPAYCHARGEPERSON\":\"\",\"FPAYTYPE\":\"\",\"FISNEEDPAYCHARGE\":\"false\",\"FISDEFAULT\":\"false\",\"FIsSupBankPay\":\"false\"}}
三、返回参数:
{\"Result\":{\"ResponseStatus\":{\"ErrorCode\":\"\",\"IsSuccess\":\"false\",\"Errors\":[{\"FieldName\":\"\",\"Message\":\"\",\"DIndex\":0}],\"SuccessEntitys\":[{\"Id\":\"\",\"Number\":\"\",\"DIndex\":0}],\"SuccessMessages\":[{\"FieldName\":\"\",\"Message\":\"\",\"DIndex\":0}]},\"Id\":\"\",\"NeedReturnData\":[{}]}}
四、代码示例:
// 使用webapi引用组件Kingdee.BOS.WebApi.Client.dll
K3CloudApiClient client = new K3CloudApiClient("http://121.36.43.55/k3cloud/");
var ret = client.ValidateLogin("61dce6601125a0","Administrator","888888",2052);
var result = JObject.Parse(ret)["LoginResultType"].Value<int>();
// 登陆成功
if (result == 1)
{
client.Draft("BD_SETTLETYPE","{\"Creator\":\"\",\"NeedUpDateFields\":[],\"NeedReturnFields\":[],\"IsDeleteEntry\":\"True\",\"SubSystemId\":\"\",\"IsVerifyBaseDataField\":\"false\",\"IsEntryBatchFill\":\"True\",\"ValidateFlag\":\"True\",\"NumberSearch\":\"True\",\"InterationFlags\":\"\",\"Model\":{\"FID\":\"0\",\"FCreateOrgId\":{\"FNumber\":\"\"},\"FUseOrgId\":{\"FNumber\":\"\"},\"FNumber\":\"\",\"FName\":\"\",\"FSETTLECATEGORY\":\"\",\"FTYPE\":\"\",\"FPAYCHARGEPERSON\":\"\",\"FPAYTYPE\":\"\",\"FISNEEDPAYCHARGE\":\"false\",\"FISDEFAULT\":\"false\",\"FIsSupBankPay\":\"false\"}}");
}
五、字段说明:
支付方式:FPAYTYPE
系统预设:FIsSysPreset
承担方:FPAYCHARGEPERSON
业务分类:FTYPE (必填项)
支付手续费:FISNEEDPAYCHARGE
禁用日期:FForbidDate
默认结算方式:FISDEFAULT
支持网银付款:FIsSupBankPay
禁用人:FForbidderID
审核人:FAuditorID
审核日期:FAuditDate
结算方式类别:FSETTLECATEGORY (必填项)
编码:FNumber
描述:FDescription
名称:FName (必填项)
数据状态:FDocumentStatus
禁用状态:FForbidStatus
创建组织:FCreateOrgId
创建日期:FCreateDate
修改日期:FModifyDate
修改人:FModifierId
使用组织:FUseOrgId
创建人:FCreatorId

28
anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/kingdee/bdsettletype/webapi测试的数据.txt

@ -0,0 +1,28 @@
{
"Creator": "",
"NeedUpDateFields": [],
"NeedReturnFields": [],
"IsDeleteEntry": "True",
"SubSystemId": "",
"IsVerifyBaseDataField": "false",
"IsEntryBatchFill": "True",
"ValidateFlag": "True",
"NumberSearch": "True",
"InterationFlags": "",
"Model": {
"FID": 0,
"FCreateOrgId": {
"FNumber": "104"
},
"FUseOrgId": {
"FNumber": "104"
},
"FNumber": "123123123123",
"FName": "123123123123123",
"FSETTLECATEGORY": "2",
"FTYPE": "1",
"FISNEEDPAYCHARGE": false,
"FISDEFAULT": false,
"FIsSupBankPay": false
}
}

BIN
anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/kingdee/bdsettletype/结算方式的参数必填备注.xlsx

Binary file not shown.

4
anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/kingdee/paezcllx/PaezCllxService.java

@ -58,8 +58,8 @@ public class PaezCllxService extends FinKingDeeService {
}
log.info("车辆类型提交成功!");
String auditKD = getAuditKD(resultBean.getData(),KingDeeBillId.CN_BANKACNT.getID());
ResultBean<String> resultBean2 = accessKingDeeInterface(KingDeeBillId.CN_BANKACNT.getID(), auditKD,KingDeeBillUrl.AUDIT_URL.getURL());
String auditKD = getAuditKD(resultBean.getData(),KingDeeBillId.PAEZ_CLLX.getID());
ResultBean<String> resultBean2 = accessKingDeeInterface(KingDeeBillId.PAEZ_CLLX.getID(), auditKD,KingDeeBillUrl.AUDIT_URL.getURL());
if(!resultBean2.getSuccess()){
log.info("车辆类型审核失败!");
return rb.setMsg("车辆类型审核失败!");

1
anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/kingdee/saloutstock/data_FEntity.json

@ -8,6 +8,7 @@
},
"FRealQty": 1.0,
"FPrice": @KD_FPrice,
"FTaxPrice": @KD_FPrice,
"FAmount": @KD_FPrice,
"FIsFree": false,
"FOwnerTypeID": "BD_OwnerOrg",

2
anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/kingdee/stkinstock/STKInStockService.java

@ -101,6 +101,8 @@ public class STKInStockService extends FinKingDeeService {
bdMaterial.setF_PAEZ_BaseType(f.getCllxType());
bdMaterial.setFMaterialGroup(f.getWlfz());
bdMaterial.setTOrgIds(stkInStock.getTOrgId());
bdMaterial.setFCategoryIDType(f.getFCategoryIDType());
bdMaterial.setFCategoryIDKey(f.getFCategoryIDKey());
List<BdMaterial> list=new ArrayList<>();
list.add(bdMaterial);
bdMaterialService.draftBdMaterialList(list);

4
anrui-fin/anrui-fin-biz/src/main/resources/application-dev.yml

@ -3,7 +3,7 @@ spring:
driver-class-name: com.mysql.cj.jdbc.Driver
url: jdbc:mysql://127.0.0.1:3306/anrui_fin?useUnicode=true&characterEncoding=UTF-8&serverTimezone=Asia/Shanghai&allowPublicKeyRetrieval=true
username: root
password: root
password: yxt_mysql_138
nacos:
discovery:
server-addr: 127.0.0.1:8848
@ -16,7 +16,7 @@ spring:
max-idle: 8 #连接池中的最大空闲连接
max-wait: -1 # 连接池最大阻塞等待时间(使用负值表示没有限制)
min-idle: 0 # 连接池中的最小空闲连接
password: 123456
password:
port: 6379
timeout: 0 # 连接超时时间(毫秒)
image:

2
anrui-flowable/anrui-flowable-api/src/main/java/com/yxt/anrui/flowable/api/sysprourl/SysProUrlFeign.java

@ -19,7 +19,7 @@ import java.util.List;
fallback = SysProUrlFeignFallBack.class)
public interface SysProUrlFeign {
/**
* 查询流程业务表单url对象
* 查询流程业务表单url对
*/
@PostMapping("/list")
public ResultBean<PagerVo<SysProUrlVo>> list(@RequestBody PagerQuery<SysProUrlQuery> pq);

3
anrui-flowable/anrui-flowable-api/src/main/java/com/yxt/anrui/flowable/api/utils/ProcDefEnum.java

@ -30,7 +30,8 @@ public enum ProcDefEnum {
FINCOSTAPPLY("费用申请","process_u0pahv0s:5:457512"),
FINPAYAPPLY("付款申请","process_gin2tntb:3:457508"),
BUSDELIVEREDAPPLY("出库申请","process_wgt1n66l:2:357504"),
BASEACCADJAPPLY("调账申请","process_r6pyzqoz:1:707504"),
BASEACCADJAPPLY("调账申请","process_r6pyzqoz:1:717504"), //测试调账流程定义id
// BASEACCADJAPPLY("调账申请","process_r6pyzqoz:1:695004"),//正式调账流程定义id
BASESHUNINVOICAPPLY("调车开票申请","process_u4xrvaso:1:400008"),
BASEVEHINSTALLMODPRICE("上装调价申请","process_s0a0svth:1:492508"),
SCMVEHREBATEWITHAPPLY("单车返利预提申请","process_qegarc7r:1:535004"),

2
anrui-portal/anrui-portal-api/src/main/java/com/yxt/anrui/portal/api/sysuser/SysUserFeign.java

@ -39,7 +39,7 @@ import java.util.Map;
fallback = SysUserFeignFallback.class)
public interface SysUserFeign {
@ApiOperation("根据条件分页查询数据的列表")
@ApiOperation("根据条件分页查询数据的列表 ")
@PostMapping("/listPage")
public ResultBean<PagerVo<SysUserVo>> listPage(@RequestBody PagerQuery<SysUserQuery> pq);

2
anrui-portal/anrui-portal-api/src/main/java/com/yxt/anrui/portal/api/sysuser/SysUserQuery.java

@ -32,6 +32,8 @@ public class SysUserQuery implements Query {
private String roleSid;
@ApiModelProperty("用户名称")
private String userName;
@ApiModelProperty("姓名")
private String name;
@ApiModelProperty("部门名称")
private String orgName;

2
anrui-portal/anrui-portal-api/src/main/java/com/yxt/anrui/portal/api/sysuser/app/AppSysUserFeign.java

@ -38,7 +38,7 @@ public interface AppSysUserFeign {
@ApiOperation(value = "我的信息")
@ResponseBody
@GetMapping("/getMyInfo/{userSid}")
// @GetMapping("/getMyInfo/{userSid}")
public ResultBean getMyInfo(@PathVariable("userSid") String userSid);
@ApiOperation(value = "我的信息:切换机构")

15
anrui-portal/anrui-portal-biz/src/main/java/com/yxt/anrui/portal/biz/sysuser/SysUserService.java

@ -123,6 +123,9 @@ public class SysUserService extends MybatisBaseService<SysUserMapper, SysUser> {
if (StringUtils.isNotBlank(query.getRoleSid())) {
qw.eq("role.sid", query.getRoleSid());
}
if (StringUtils.isNotBlank(query.getName())) {
qw.like("staff.name", query.getName());
}
return qw;
}
@ -215,7 +218,7 @@ public class SysUserService extends MybatisBaseService<SysUserMapper, SysUser> {
if (null == user) {
return false;
}
String mobile = user.getUserName();
String mobile = user.getMobile();
String substring = mobile.substring(5, 11);
// 1.生成新密码
@ -895,8 +898,8 @@ public class SysUserService extends MybatisBaseService<SysUserMapper, SysUser> {
* @param userSid 用户的sid
* @return
*/
public SysUserInfoVo selectUserInfoByUserSid(String userSid,String orgSid) {
return baseMapper.selectUserInfoByUserSidOne(userSid,orgSid);
public SysUserInfoVo selectUserInfoByUserSid(String userSid, String orgSid) {
return baseMapper.selectUserInfoByUserSidOne(userSid, orgSid);
}
/**
@ -977,7 +980,7 @@ public class SysUserService extends MybatisBaseService<SysUserMapper, SysUser> {
if (StringUtils.isBlank(query.getRoleSid())) {
return rb.setMsg("角色sid不能为空");
}
if(StringUtils.isBlank(query.getOrgPath())){
if (StringUtils.isBlank(query.getOrgPath())) {
if (StringUtils.isBlank(query.getOrgSidPath())) {
return rb.setMsg("机构全路径不能为空");
}
@ -993,7 +996,7 @@ public class SysUserService extends MybatisBaseService<SysUserMapper, SysUser> {
} else {
return rb.setMsg("该角色层级未设置");
}
}else{
} else {
sysUserVoList = baseMapper.getUserByRole(query.getRoleSid(), query.getOrgPath());
}
@ -1119,7 +1122,7 @@ public class SysUserService extends MybatisBaseService<SysUserMapper, SysUser> {
}
public List<SysStaffOrg> selectOrgBySid(String orgPath, String staffSid) {
return sysStaffOrgService.selectOrgBySid(orgPath,staffSid);
return sysStaffOrgService.selectOrgBySid(orgPath, staffSid);
}
public List<String> getPost(String userSid) {

2
anrui-scm/anrui-scm-api/src/main/java/com/yxt/anrui/scm/api/scmvehicleexamine/ScmVehicleExamineFeign.java

@ -54,7 +54,7 @@ import org.springframework.web.bind.annotation.*;
fallback = ScmVehicleExamineFeignFallback.class)
public interface ScmVehicleExamineFeign {
@ApiOperation("根据条件分页查询数据的列表")
@ApiOperation("根据条件分页查询数据的列表 ")
@PostMapping("/listPage")
@ResponseBody
public ResultBean<PagerVo<ScmVehicleExamineVo>> listPage(@RequestBody PagerQuery<ScmVehicleExamineQuery> pq);

2
anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmvehicleenterlibrary/ScmVehicleEnterlibraryService.java

@ -479,6 +479,8 @@ public class ScmVehicleEnterlibraryService extends MybatisBaseService<ScmVehicle
baseVehicleDto.setSpecialInstructions(scmVehicleEnterlibrary.getSpecialInstructions()); // 特殊差异说明 验车
baseVehicleDto.setManPurOrderTypeKey(scmVehicleEnterlibrary.getPurchaseTypeKey());
baseVehicleDto.setManPurOrderTypeValue(scmVehicleEnterlibrary.getPurchaseType());
baseVehicleDto.setSalePrice(Integer.valueOf(vehicleDetailsVo.getWitPinMoney()));
baseVehicleDto.setContractPrice(Integer.valueOf(vehicleDetailsVo.getWitPinMoney()));
//根据车型sid查询品牌及名称及厂商sid
ResultBean<String> stringResultBean = baseManufacturerFeign.selectByInternalPurchaseSid(internalPurchaseDetailsVo.getBuyerOrgSid(), internalPurchaseDetailsVo.getSellerOrgName());

21
anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmvehicleexamine/ScmVehicleExamineService.java

@ -29,6 +29,9 @@ import cn.hutool.core.bean.BeanUtil;
import com.alibaba.fastjson.JSONObject;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.yxt.anrui.base.api.basemanufacturer.BaseManufacturer;
import com.yxt.anrui.base.api.basemanufacturer.BaseManufacturerAllVo;
import com.yxt.anrui.base.api.basemanufacturer.BaseManufacturerFeign;
import com.yxt.anrui.base.api.baseoutsourcingapplication.BaseOutsourcingApplicationDetailsVo;
import com.yxt.anrui.base.api.baseoutsourcingapplication.BaseOutsourcingApplicationFeign;
import com.yxt.anrui.base.api.basevehicle.BaseVehicleDto;
@ -115,6 +118,9 @@ public class ScmVehicleExamineService extends MybatisBaseService<ScmVehicleExami
@Autowired
private AppSubsetVersionFeign appSubsetVersionFeign;
@Autowired
BaseManufacturerFeign baseManufacturerFeign;
private QueryWrapper<ScmVehicleExamine> createQueryWrapper(ScmVehicleExamineQuery query) {
// todo: 这里根据具体业务调整查询条件
@ -172,7 +178,7 @@ public class ScmVehicleExamineService extends MybatisBaseService<ScmVehicleExami
*/
public IPage<ScmVehicleExaminePageVo> selectCarInspectedList(PagerQuery<ScmVehicleExaminePageQuery> pagerQuery) {
IPage<ScmVehicleExaminePageQuery> page = PagerUtil.queryToPage(pagerQuery);
String useOrgSid = sysOrganizationFeign.getUseOrgByUserSid(pagerQuery.getParams().getUserSid()).getData().getSid();
String useOrgSid = sysStaffOrgFeign.getPathSidByUserSid(pagerQuery.getParams().getUserSid()).getData();
pagerQuery.getParams().setUseOrgSid(useOrgSid);
QueryWrapper<ScmVehicleExaminePageVo> qw = carInspectedQueryWrapper(pagerQuery.getParams());
IPage<ScmVehicleExaminePageVo> iPage = baseMapper.selectCarInspectedList(page, qw);
@ -557,7 +563,8 @@ public class ScmVehicleExamineService extends MybatisBaseService<ScmVehicleExami
}
String staffSid = sysUserFeign.getUserOrgInfoByUserSid(dto.getUserSid()).getData().getStaffSid();
SysStaffinfoVo data = sysUserFeign.getSysUserByMobile(staffSid).getData();
SysOrganizationVo data1 = sysOrganizationFeign.getUseOrgByUserSid(dto.getUserSid()).getData();
String useOrgSid = sysStaffOrgFeign.getPathSidByUserSid(dto.getUserSid()).getData();
SysOrganizationVo sysOrganizationVo = sysOrganizationFeign.fetchBySid(useOrgSid).getData();
String s1 = "";
String s2 = "";
String type1 = "01"; //厂家验车照片
@ -607,8 +614,8 @@ public class ScmVehicleExamineService extends MybatisBaseService<ScmVehicleExami
carWarehousingDto.setInspection(scmVehicleExamine.getInspection());
carWarehousingDto.setInboundFactoryDate(scmVehicleExamine.getInboundDate());
carWarehousingDto.setInboundState("1");
carWarehousingDto.setUseOrgSid(data1.getSid());
carWarehousingDto.setUseOrgName(data1.getName());
carWarehousingDto.setUseOrgSid(useOrgSid);
carWarehousingDto.setUseOrgName(sysOrganizationVo.getName());
scmVehicleEnterlibraryService.saveCarWarehousing(carWarehousingDto);
//如果订单为外采订单向待付款列表推送数据
if (ManPurOrderType.ManOrderType.WC_ORDER.getCode().equals(scmVehicleExamine.getPurchaseTypeKey())) {
@ -629,12 +636,16 @@ public class ScmVehicleExamineService extends MybatisBaseService<ScmVehicleExami
Integer num = outsourcingApplicationDetailsVo.getNum();
finPaymentrecordDto.setCost(price * num - Integer.valueOf(outsourcingApplicationDetailsVo.getDeposit()));
finPaymentrecordDto.setBusSid("");
BaseManufacturerAllVo baseManufacturerAllVo = baseManufacturerFeign.details(outsourcingApplicationDetailsVo.getSupplierSid()).getData();
if (baseManufacturerAllVo != null) {
finPaymentrecordDto.setPayCode(baseManufacturerAllVo.getBaseManufacturerDto().getManufacturerCode());
}
finPaymentrecordFeign.save(finPaymentrecordDto);
}
//车辆台账推送数据
BaseVehicleDto baseVehicleDto = new BaseVehicleDto();
baseVehicleDto.setVinNo(dto.getVin());
baseVehicleDto.setUseOrgSid(data1.getSid());
baseVehicleDto.setUseOrgSid(useOrgSid);
baseVehicleDto.setWarrantyCardNo(dto.getGuaranteeCardNo());//保修卡卡号
baseVehicleDto.setSpecialInstructions(dto.getModelDifferenceExplain());//特殊配置差异说明
List<BaseVehicleDto> list = new ArrayList();

61
anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmvehiclegression/ScmVehicleGressionService.java

@ -575,6 +575,7 @@ public class ScmVehicleGressionService extends MybatisBaseService<ScmVehicleGres
if (scmVehicleGression != null) {
if (StringUtils.isBlank(scmVehicleGression.getNodeState())) {
int i = deleteBySid(sid);
baseVehicleTempstateFeign.delByBusSid(sid);
if (i <= 0) {
return rb.setMsg("删除失败");
}
@ -703,7 +704,7 @@ public class ScmVehicleGressionService extends MybatisBaseService<ScmVehicleGres
String orgSidPath = staffOrgResultBean.getData().getOrgSidPath();
//用户的部门全路径sid
bv.setOrgSidPath(orgSidPath);
}else{
} else {
bv.setOrgPath(orgPath);
}
@ -910,33 +911,33 @@ public class ScmVehicleGressionService extends MybatisBaseService<ScmVehicleGres
scmExitPermitService.insert(scmExitPermit);
});
ScmVehicleGression finalScmVehicleGression = scmVehicleGression;
Future future2 = pool.submit(() -> {
//推送调拨单
List<String> vinList = scmVehicleGressionVehService.fetchVoByMainSid(bv.getBusinessSid());
if (vinList.size() > 0) {
//根据分公司sid查询分公司编码
String useOrgSid = finalScmVehicleGression.getUseOrgSid();
ResultBean<SysOrganizationVo> sysOrg = sysOrganizationFeign.fetchBySid(useOrgSid);
SysOrganizationVo sysOrganizationVo = sysOrg.getData();
for (String s : vinList) {
BaseVehicleVo baseVehicleVo = baseVehicleFeign.selVehicleByVinNo(s).getData();
List<StkTransferDirect.FBillEntry> FPAYBILLENTRYs = new ArrayList<>();
StkTransferDirect stkTransferDirect = new StkTransferDirect();
stkTransferDirect.setFStockOrgId(sysOrganizationVo.getOrgCode()); //调入库存组织
stkTransferDirect.setFDate(simpleDateFormat.format(baseVehicleVo.getPriceDate())); //日期
StkTransferDirect.FBillEntry fBillEntry = new StkTransferDirect.FBillEntry();
ScmWarehouse scmWarehouse = scmWarehouseService.fetchBySid(finalScmVehicleGression.getTargetLocationSid());
fBillEntry.setFDestStockId(scmWarehouse.getGressionCode());//调入仓库
fBillEntry.setFMaterialId(s);//物料编码
scmWarehouse = scmWarehouseService.fetchBySid(finalScmVehicleGression.getLocationSid());
fBillEntry.setFSrcStockId(scmWarehouse.getGressionCode());//调出仓库
FPAYBILLENTRYs.add(fBillEntry);
stkTransferDirect.setFBillEntry(FPAYBILLENTRYs);
finKingDeeFeign.draftStkTransferDirect(stkTransferDirect);
}
}
});
// Future future2 = pool.submit(() -> {
// //推送调拨单
// List<String> vinList = scmVehicleGressionVehService.fetchVoByMainSid(bv.getBusinessSid());
// if (vinList.size() > 0) {
// //根据分公司sid查询分公司编码
// String useOrgSid = finalScmVehicleGression.getUseOrgSid();
// ResultBean<SysOrganizationVo> sysOrg = sysOrganizationFeign.fetchBySid(useOrgSid);
// SysOrganizationVo sysOrganizationVo = sysOrg.getData();
// for (String s : vinList) {
// BaseVehicleVo baseVehicleVo = baseVehicleFeign.selVehicleByVinNo(s).getData();
// List<StkTransferDirect.FBillEntry> FPAYBILLENTRYs = new ArrayList<>();
// StkTransferDirect stkTransferDirect = new StkTransferDirect();
// stkTransferDirect.setFStockOrgId(sysOrganizationVo.getOrgCode()); //调入库存组织
// stkTransferDirect.setFDate(simpleDateFormat.format(baseVehicleVo.getPriceDate())); //日期
// StkTransferDirect.FBillEntry fBillEntry = new StkTransferDirect.FBillEntry();
// ScmWarehouse scmWarehouse = scmWarehouseService.fetchBySid(finalScmVehicleGression.getTargetLocationSid());
// fBillEntry.setFDestStockId(scmWarehouse.getGressionCode());//调入仓库
// fBillEntry.setFMaterialId(s);//物料编码
// scmWarehouse = scmWarehouseService.fetchBySid(finalScmVehicleGression.getLocationSid());
// fBillEntry.setFSrcStockId(scmWarehouse.getGressionCode());//调出仓库
// FPAYBILLENTRYs.add(fBillEntry);
// stkTransferDirect.setFBillEntry(FPAYBILLENTRYs);
// finKingDeeFeign.draftStkTransferDirect(stkTransferDirect);
// }
// }
//
// });
} else {
//极光推送
scmVehicleGression = fetchBySid(bv.getBusinessSid());
@ -1384,9 +1385,9 @@ public class ScmVehicleGressionService extends MybatisBaseService<ScmVehicleGres
return pdfName;
}
public ResultBean<String> getToDoNum(String userSid,String orgPath) {
public ResultBean<String> getToDoNum(String userSid, String orgPath) {
ResultBean rb = ResultBean.fireFail();
if(StringUtils.isBlank(orgPath)){
if (StringUtils.isBlank(orgPath)) {
orgPath = sysStaffOrgFeign.getPathSidByUserSid(userSid).getData();
}
int count = baseMapper.getToDoNum(orgPath, userSid);

198
anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmvehiclepatrolinspectionsheet/ScmVehiclePatrolinspectionsheetService.java

@ -55,6 +55,7 @@ import com.yxt.common.core.query.PagerQuery;
import com.yxt.common.core.result.ResultBean;
import com.yxt.common.core.vo.PagerVo;
import com.yxt.messagecenter.api.message.AppMessageDto;
import com.yxt.messagecenter.api.message.AppScmMessageFlowableQuery;
import com.yxt.messagecenter.api.message.MessageFeign;
import com.yxt.messagecenter.api.message.MsgTargetUriEnum;
import com.yxt.messagecenter.api.messagelist.MessageListDto;
@ -324,19 +325,28 @@ public class ScmVehiclePatrolinspectionsheetService extends MybatisBaseService<S
List<String> receiveIdList = new ArrayList<>();
List<AppLiableListDto> liableList = new ArrayList<>();
AppLiableListDto appLiableListDto = new AppLiableListDto();
List<String> recipientSidList = new ArrayList<>();
appLiableListDto.setLiableName(dto.getLiableName());
appLiableListDto.setLiableSid(dto.getLiableSid());
liableList.add(appLiableListDto);
recipientSidList.add(appLiableListDto.getLiableSid());
SysUserVo sysUserVos = sysUserFeign.fetchBySid(dto.getLiableSid()).getData();
Integer id = sysUserVos.getId();
receiveIdList.add(String.valueOf(id));
AppPatrolinspectionDto appPatrolinspectionDto = new AppPatrolinspectionDto();
appPatrolinspectionDto.setMsgContent(sysUserVo.getName());
appPatrolinspectionDto.setList(liableList);
appPatrolinspectionDto.setMainSid(dto.getMainSid());
appPatrolinspectionDto.setReceiveIdList(receiveIdList);
// 消息推送
sendMessage(appPatrolinspectionDto);
AppScmMessageFlowableQuery query = new AppScmMessageFlowableQuery();
query.setMainSid(dto.getMainSid());
query.setList(recipientSidList);
query.setReceiveIdList(receiveIdList);
query.setMsgTitle("月度巡检问题");
query.setMsgContent(sysUserVo.getName() + "提交的月度巡检问题,请查阅");
query.setMsgSource("供应链");
query.setMsgTargetUri(MsgTargetUriEnum.GYLPKBG.getUri());
query.setApp_type("2");
query.setModuleSid("98ff0724-5df4-4fc7-ab6d-3996e7706acd");
query.setName("供应链");
// 消息推送
messageFeign.sendMessage(query);
return rb.success().setMsg("添加成功");
}
BeanUtil.copyProperties(dto, scmVehiclePatrolinspectionsheet, "sid");
@ -361,20 +371,29 @@ public class ScmVehiclePatrolinspectionsheetService extends MybatisBaseService<S
scmVehiclePatrolinspectionService.updateByMainSid(oneKey, oneValue, newDate, sysUserVo.getName(), dto.getMainSid());
List<String> receiveIdList = new ArrayList<>();
List<AppLiableListDto> liableList = new ArrayList<>();
List<String> recipientSidList = new ArrayList<>();
AppLiableListDto appLiableListDto = new AppLiableListDto();
appLiableListDto.setLiableName(dto.getLiableName());
appLiableListDto.setLiableSid(dto.getLiableSid());
liableList.add(appLiableListDto);
recipientSidList.add(dto.getLiableSid());
SysUserVo sysUserVos = sysUserFeign.fetchBySid(dto.getLiableSid()).getData();
Integer id = sysUserVos.getId();
receiveIdList.add(String.valueOf(id));
AppPatrolinspectionDto appPatrolinspectionDto = new AppPatrolinspectionDto();
appPatrolinspectionDto.setMsgContent(sysUserVo.getName());
appPatrolinspectionDto.setList(liableList);
appPatrolinspectionDto.setMainSid(dto.getMainSid());
appPatrolinspectionDto.setReceiveIdList(receiveIdList);
// 消息推送
sendMessage(appPatrolinspectionDto);
AppScmMessageFlowableQuery query = new AppScmMessageFlowableQuery();
query.setMainSid(dto.getMainSid());
query.setList(recipientSidList);
query.setReceiveIdList(receiveIdList);
query.setMsgTitle("月度巡检问题");
query.setMsgContent(sysUserVo.getName() + "提交的月度巡检问题,请查阅");
query.setMsgSource("供应链");
query.setMsgTargetUri(MsgTargetUriEnum.GYLPKBG.getUri());
query.setApp_type("2");
query.setModuleSid("98ff0724-5df4-4fc7-ab6d-3996e7706acd");
query.setName("供应链");
// 消息推送
messageFeign.sendMessage(query);
return rb.success();
}
@ -489,86 +508,95 @@ public class ScmVehiclePatrolinspectionsheetService extends MybatisBaseService<S
receiveIdList.add(String.valueOf(id));
List<AppLiableListDto> liableList = new ArrayList<>();
AppLiableListDto appLiableListDto = new AppLiableListDto();
List<String> recipientSidList = new ArrayList<>();
appLiableListDto.setLiableName(scmWarehouse.getLibTubeName());
appLiableListDto.setLiableSid(scmWarehouse.getLibTubeSid());
recipientSidList.add(dto.getLiableSid());
liableList.add(appLiableListDto);
AppPatrolinspectionDto appPatrolinspectionDto = new AppPatrolinspectionDto();
appPatrolinspectionDto.setMsgContent(sysUserVo.getName());
appPatrolinspectionDto.setList(liableList);
appPatrolinspectionDto.setMainSid(dto.getMainSid());
appPatrolinspectionDto.setReceiveIdList(receiveIdList);
// 消息推送
sendMessage(appPatrolinspectionDto);
AppScmMessageFlowableQuery query = new AppScmMessageFlowableQuery();
query.setMainSid(dto.getMainSid());
query.setList(recipientSidList);
query.setReceiveIdList(receiveIdList);
query.setMsgTitle("月度巡检问题");
query.setMsgContent(sysUserVo.getName() + "提交的月度巡检问题,请查阅");
query.setMsgSource("供应链");
query.setMsgTargetUri(MsgTargetUriEnum.GYLPKBG.getUri());
query.setApp_type("2");
query.setModuleSid("98ff0724-5df4-4fc7-ab6d-3996e7706acd");
query.setName("供应链");
// 消息推送
messageFeign.sendMessage(query);
return rb.success().setMsg("添加成功");
}
/**
* 保存消息发出推送
*
* @throws InterruptedException
*/
public void sendMessage(AppPatrolinspectionDto appPatrolinspectionDto) {
// 1、保存消息体
AppMessageDto messageDto = new AppMessageDto();
ResultBean<List<MessageTypeVo>> messageBean = messageTypeFeign.selectAppMsgTypeList(IDENTIFIER);
if (messageBean.getSuccess() && messageBean.getData() != null) {
List<MessageTypeVo> typeVoList = messageBean.getData();
for (MessageTypeVo message : typeVoList) {
if (message.getMsgType().equals("供应链")) {
messageDto.setMsgTypeSid(message.getMsgTypeSid());
messageDto.setMsgType(message.getMsgType());
}
}
}
messageDto.setMsgTitle("月度巡检问题");
messageDto.setMsgContent(appPatrolinspectionDto.getMsgContent() + "提交的月度巡检问题,请查阅");
messageDto.setMsgSource("供应链");
messageDto.setMsgTargetUri(MsgTargetUriEnum.GYLXJWT.getUri());
messageDto.setApp_type("2");
messageDto.setModuleSid("98ff0724-5df4-4fc7-ab6d-3996e7706acd");
JSONObject json = new JSONObject();
json.put("sid", appPatrolinspectionDto.getMainSid());
messageDto.setArgs_json(json.toJSONString());
String msgSid = (String) messageFeign.saveOrUpdateAppMessage(messageDto).getData();
String msgTypeSid = messageDto.getMsgTypeSid();
// 2、保存至消息列表
List<AppLiableListDto> list = appPatrolinspectionDto.getList();
// 使用多线程保存
List<Future<?>> futures = new ArrayList<Future<?>>();
ExecutorService executor = Executors.newFixedThreadPool(4);
for (AppLiableListDto appLiableListDto : list) {
Future<?> f = executor.submit(new Runnable() {
@Override
public void run() {
try {
System.out.println("run start-----------------" + System.currentTimeMillis() + ":" + Thread.currentThread().getName());
MessageListDto messageList = new MessageListDto();
messageList.setMsgSid(msgSid);
messageList.setRDelStatus(0);
messageList.setSDelStatus(0);
messageList.setReceiverSid(appLiableListDto.getLiableSid());
messageListFeign.save(messageList);
// Thread.sleep(5 * 1000);
System.out.println("run end-----------------" + System.currentTimeMillis() + ":" + Thread.currentThread().getName());
} catch (Exception e) {
e.printStackTrace();
}
}
});
futures.add(f);
}
executor.shutdown();
for (int i = 0; i < appPatrolinspectionDto.getReceiveIdList().size(); i++) {
/**
* msgTitle:排产申请
* content:xxx的排产申请
*/
JPushServer.sendPushAlias(messageDto.getMsgTitle(), messageDto.getMsgContent(), msgTypeSid, "供应链", appPatrolinspectionDto.getReceiveIdList().get(i));
} // 3、推送
// JPushServer.sendPushAll(messageDto.getMsgTitle(), messageDto.getMsgContent(), msgTypeSid, messageDto.getMsgType());
// JPushServer.sendPushAlias(messageDto.getMsgTitle(), messageDto.getMsgContent(), msgSid, messageDto.getMsgType(), "23","26","66"); // 别名
System.out.println("process end");
}
// /**
// * 保存消息、发出推送
// *
// * @throws InterruptedException
// */
// public void sendMessage(AppPatrolinspectionDto appPatrolinspectionDto) {
// // 1、保存消息体
// AppMessageDto messageDto = new AppMessageDto();
// ResultBean<List<MessageTypeVo>> messageBean = messageTypeFeign.selectAppMsgTypeList(IDENTIFIER);
// if (messageBean.getSuccess() && messageBean.getData() != null) {
// List<MessageTypeVo> typeVoList = messageBean.getData();
// for (MessageTypeVo message : typeVoList) {
// if (message.getMsgType().equals("供应链")) {
// messageDto.setMsgTypeSid(message.getMsgTypeSid());
// messageDto.setMsgType(message.getMsgType());
// }
// }
// }
// messageDto.setMsgTitle("月度巡检问题");
// messageDto.setMsgContent(appPatrolinspectionDto.getMsgContent() + "提交的月度巡检问题,请查阅");
// messageDto.setMsgSource("供应链");
// messageDto.setMsgTargetUri(MsgTargetUriEnum.GYLXJWT.getUri());
// messageDto.setApp_type("2");
// messageDto.setModuleSid("98ff0724-5df4-4fc7-ab6d-3996e7706acd");
// JSONObject json = new JSONObject();
// json.put("sid", appPatrolinspectionDto.getMainSid());
// messageDto.setArgs_json(json.toJSONString());
// String msgSid = (String) messageFeign.saveOrUpdateAppMessage(messageDto).getData();
// String msgTypeSid = messageDto.getMsgTypeSid();
// // 2、保存至消息列表
// List<AppLiableListDto> list = appPatrolinspectionDto.getList();
// // 使用多线程保存
// List<Future<?>> futures = new ArrayList<Future<?>>();
// ExecutorService executor = Executors.newFixedThreadPool(4);
// for (AppLiableListDto appLiableListDto : list) {
// Future<?> f = executor.submit(new Runnable() {
// @Override
// public void run() {
// try {
// System.out.println("run start-----------------" + System.currentTimeMillis() + ":" + Thread.currentThread().getName());
// MessageListDto messageList = new MessageListDto();
// messageList.setMsgSid(msgSid);
// messageList.setRDelStatus(0);
// messageList.setSDelStatus(0);
// messageList.setReceiverSid(appLiableListDto.getLiableSid());
// messageListFeign.save(messageList);
//// Thread.sleep(5 * 1000);
// System.out.println("run end-----------------" + System.currentTimeMillis() + ":" + Thread.currentThread().getName());
// } catch (Exception e) {
// e.printStackTrace();
// }
// }
// });
// futures.add(f);
// }
// executor.shutdown();
// for (int i = 0; i < appPatrolinspectionDto.getReceiveIdList().size(); i++) {
// /**
// * msgTitle:排产申请
// * content:xxx的排产申请
// */
// JPushServer.sendPushAlias(messageDto.getMsgTitle(), messageDto.getMsgContent(), msgTypeSid, "供应链", appPatrolinspectionDto.getReceiveIdList().get(i));
// } // 3、推送
//// JPushServer.sendPushAll(messageDto.getMsgTitle(), messageDto.getMsgContent(), msgTypeSid, messageDto.getMsgType());
//// JPushServer.sendPushAlias(messageDto.getMsgTitle(), messageDto.getMsgContent(), msgSid, messageDto.getMsgType(), "23","26","66"); // 别名
// System.out.println("process end");
// }
/**
* 手机端-通过巡检操作

159
anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmvehinventoryreport/ScmVehInventoryreportService.java

@ -41,6 +41,7 @@ import com.yxt.common.core.query.PagerQuery;
import com.yxt.common.core.result.ResultBean;
import com.yxt.common.core.vo.PagerVo;
import com.yxt.messagecenter.api.message.AppMessageDto;
import com.yxt.messagecenter.api.message.AppScmMessageFlowableQuery;
import com.yxt.messagecenter.api.message.MessageFeign;
import com.yxt.messagecenter.api.message.MsgTargetUriEnum;
import com.yxt.messagecenter.api.messagelist.MessageListDto;
@ -141,7 +142,7 @@ public class ScmVehInventoryreportService extends MybatisBaseService<ScmVehInven
SysUserVo sysUserVo = sysUserFeign.fetchBySid(dto.getUserSid()).getData();
ScmVehInventoryreport scmVehInventoryreport = new ScmVehInventoryreport();
BeanUtil.copyProperties(dto, scmVehInventoryreport, "sid");
AppScmVehInventorymonthInfoVo data = scmVehInventorymonthService.getCarInventoryReport(dto.getMainSid(),dto.getUserSid()).getData();
AppScmVehInventorymonthInfoVo data = scmVehInventorymonthService.getCarInventoryReport(dto.getMainSid(), dto.getUserSid()).getData();
scmVehInventoryreport.setReportContent(data.getProfitRemarks() + data.getLossRemarks() + data.getDamageRemarks());
scmVehInventorymonthService.updateByMainSid(dto.getMainSid());
List<RecipientListDto> recipientList = dto.getRecipientList();
@ -155,89 +156,99 @@ public class ScmVehInventoryreportService extends MybatisBaseService<ScmVehInven
scmVehInventoryreport.setReceiverSids(receiverSids.substring(0, receiverSids.length() - 1));
scmVehInventoryreport.setCreateBySid(dto.getUserSid());
save(scmVehInventoryreport);
List<String> receiveIdList = new ArrayList<>();
List<String> recipientSidList = new ArrayList<>();
for (RecipientListDto recipientListDto : recipientList) {
SysUserVo sysUserVos = sysUserFeign.fetchBySid(recipientListDto.getSid()).getData();
Integer id = sysUserVos.getId();
recipientSidList.add(recipientListDto.getSid());
receiveIdList.add(String.valueOf(id));
}
AppReportDto appReportDto = new AppReportDto();
appReportDto.setMsgContent(sysUserVo.getName());
appReportDto.setList(recipientList);
appReportDto.setMainSid(dto.getMainSid());
appReportDto.setReceiveIdList(receiveIdList);
AppScmMessageFlowableQuery query = new AppScmMessageFlowableQuery();
query.setMainSid(dto.getMainSid());
query.setList(recipientSidList);
query.setReceiveIdList(receiveIdList);
query.setMsgTitle("供应链");
query.setMsgContent(sysUserVo.getName() + "提交的月度盘库报告,请查阅");
query.setMsgSource("供应链");
query.setMsgTargetUri(MsgTargetUriEnum.GYLPKBG.getUri());
query.setApp_type("2");
query.setModuleSid("98ff0724-5df4-4fc7-ab6d-3996e7706acd");
query.setName("供应链");
// 消息推送
sendMessage(appReportDto);
messageFeign.sendMessage(query);
return rb.success();
}
/**
* 保存消息发出推送
*
* @throws InterruptedException
*/
public void sendMessage(AppReportDto appReportDto) {
// 1、保存消息体
AppMessageDto messageDto = new AppMessageDto();
ResultBean<List<MessageTypeVo>> messageBean = messageTypeFeign.selectAppMsgTypeList(IDENTIFIER);
if (messageBean.getSuccess() && messageBean.getData() != null) {
List<MessageTypeVo> typeVoList = messageBean.getData();
for (MessageTypeVo message : typeVoList) {
if (message.getMsgType().equals("供应链")) {
messageDto.setMsgTypeSid(message.getMsgTypeSid());
messageDto.setMsgType(message.getMsgType());
}
}
}
messageDto.setMsgTitle("月度盘库报告");
messageDto.setMsgContent(appReportDto.getMsgContent() + "提交的月度盘库报告,请查阅");
messageDto.setMsgSource("供应链");
messageDto.setMsgTargetUri(MsgTargetUriEnum.GYLPKBG.getUri());
messageDto.setApp_type("2");
messageDto.setModuleSid("98ff0724-5df4-4fc7-ab6d-3996e7706acd");
JSONObject json = new JSONObject();
json.put("sid", appReportDto.getMainSid());
messageDto.setArgs_json(json.toJSONString());
String msgSid = (String) messageFeign.saveOrUpdateAppMessage(messageDto).getData();
String msgTypeSid = messageDto.getMsgTypeSid();
// 2、保存至消息列表
List<RecipientListDto> list = appReportDto.getList();
// 使用多线程保存
List<Future<?>> futures = new ArrayList<Future<?>>();
ExecutorService executor = Executors.newFixedThreadPool(4);
for (RecipientListDto recipientListDto : list) {
Future<?> f = executor.submit(new Runnable() {
@Override
public void run() {
try {
System.out.println("run start-----------------" + System.currentTimeMillis() + ":" + Thread.currentThread().getName());
MessageListDto messageList = new MessageListDto();
messageList.setMsgSid(msgSid);
messageList.setRDelStatus(0);
messageList.setSDelStatus(0);
messageList.setReceiverSid(recipientListDto.getSid());
messageListFeign.save(messageList);
// Thread.sleep(5 * 1000);
System.out.println("run end-----------------" + System.currentTimeMillis() + ":" + Thread.currentThread().getName());
} catch (Exception e) {
e.printStackTrace();
}
}
});
futures.add(f);
}
executor.shutdown();
for (int i = 0; i < appReportDto.getReceiveIdList().size(); i++) {
/**
* msgTitle:排产申请
* content:xxx的排产申请
*/
JPushServer.sendPushAlias(messageDto.getMsgTitle(), messageDto.getMsgContent(), msgTypeSid, "供应链", appReportDto.getReceiveIdList().get(i));
} // 3、推送
// JPushServer.sendPushAll(messageDto.getMsgTitle(), messageDto.getMsgContent(), msgTypeSid, messageDto.getMsgType());
// JPushServer.sendPushAlias(messageDto.getMsgTitle(), messageDto.getMsgContent(), msgSid, messageDto.getMsgType(), "23","26","66"); // 别名
System.out.println("process end");
}
// /**
// * 保存消息、发出推送
// *
// * @throws InterruptedException
// */
// public void sendMessage(AppReportDto appReportDto) {
// // 1、保存消息体
// AppMessageDto messageDto = new AppMessageDto();
// ResultBean<List<MessageTypeVo>> messageBean = messageTypeFeign.selectAppMsgTypeList(IDENTIFIER);
// if (messageBean.getSuccess() && messageBean.getData() != null) {
// List<MessageTypeVo> typeVoList = messageBean.getData();
// for (MessageTypeVo message : typeVoList) {
// if (message.getMsgType().equals("供应链")) {
// messageDto.setMsgTypeSid(message.getMsgTypeSid());
// messageDto.setMsgType(message.getMsgType());
// }
// }
// }
// messageDto.setMsgTitle("月度盘库报告");
// messageDto.setMsgContent(appReportDto.getMsgContent() + "提交的月度盘库报告,请查阅");
// messageDto.setMsgSource("供应链");
// messageDto.setMsgTargetUri(MsgTargetUriEnum.GYLPKBG.getUri());
// messageDto.setApp_type("2");
// messageDto.setModuleSid("98ff0724-5df4-4fc7-ab6d-3996e7706acd");
// JSONObject json = new JSONObject();
// json.put("sid", appReportDto.getMainSid());
// messageDto.setArgs_json(json.toJSONString());
// String msgSid = (String) messageFeign.saveOrUpdateAppMessage(messageDto).getData();
// String msgTypeSid = messageDto.getMsgTypeSid();
// // 2、保存至消息列表
// List<RecipientListDto> list = appReportDto.getList();
// // 使用多线程保存
// List<Future<?>> futures = new ArrayList<Future<?>>();
// ExecutorService executor = Executors.newFixedThreadPool(4);
// for (RecipientListDto recipientListDto : list) {
// Future<?> f = executor.submit(new Runnable() {
// @Override
// public void run() {
// try {
// System.out.println("run start-----------------" + System.currentTimeMillis() + ":" + Thread.currentThread().getName());
// MessageListDto messageList = new MessageListDto();
// messageList.setMsgSid(msgSid);
// messageList.setRDelStatus(0);
// messageList.setSDelStatus(0);
// messageList.setReceiverSid(recipientListDto.getSid());
// messageListFeign.save(messageList);
//// Thread.sleep(5 * 1000);
// System.out.println("run end-----------------" + System.currentTimeMillis() + ":" + Thread.currentThread().getName());
// } catch (Exception e) {
// e.printStackTrace();
// }
// }
// });
// futures.add(f);
// }
// executor.shutdown();
// for (int i = 0; i < appReportDto.getReceiveIdList().size(); i++) {
// /**
// * msgTitle:排产申请
// * content:xxx的排产申请
// */
// JPushServer.sendPushAlias(messageDto.getMsgTitle(), messageDto.getMsgContent(), msgTypeSid, "供应链", appReportDto.getReceiveIdList().get(i));
// } // 3、推送
//// JPushServer.sendPushAll(messageDto.getMsgTitle(), messageDto.getMsgContent(), msgTypeSid, messageDto.getMsgType());
//// JPushServer.sendPushAlias(messageDto.getMsgTitle(), messageDto.getMsgContent(), msgSid, messageDto.getMsgType(), "23","26","66"); // 别名
// System.out.println("process end");
// }
public List<RecipientListVo> selectByMainSid(String userSid) {
return baseMapper.selectByMainSid(userSid);

24
anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmvehpatrolinspectionreport/ScmVehPatrolinspectionreportService.java

@ -43,6 +43,7 @@ import com.yxt.anrui.scm.biz.scmvehinventorymonth.ScmVehInventorymonthService;
import com.yxt.anrui.scm.biz.scmvehpatrolinspectionmonth.ScmVehPatrolinspectionmonthService;
import com.yxt.common.base.utils.JPushServer;
import com.yxt.messagecenter.api.message.AppMessageDto;
import com.yxt.messagecenter.api.message.AppScmMessageFlowableQuery;
import com.yxt.messagecenter.api.message.MessageFeign;
import com.yxt.messagecenter.api.message.MsgTargetUriEnum;
import com.yxt.messagecenter.api.messagelist.MessageListDto;
@ -95,6 +96,8 @@ public class ScmVehPatrolinspectionreportService extends MybatisBaseService<ScmV
ScmVehiclePatrolinspectionsheetService scmVehiclePatrolinspectionsheetService;
@Autowired
private SysUserFeign sysUserFeign;
@Autowired
private MessageFeign messageFeign;
private QueryWrapper<ScmVehPatrolinspectionreport> createQueryWrapper(ScmVehPatrolinspectionreportQuery query) {
// todo: 这里根据具体业务调整查询条件
@ -186,17 +189,26 @@ public class ScmVehPatrolinspectionreportService extends MybatisBaseService<ScmV
scmVehiclePatrolinspectionService.updateState(dto.getMainSid());
scmVehPatrolinspectionmonthService.updateBySidState(dto.getMainSid());
List<String> receiveIdList = new ArrayList<>();
List<String> recipientSidList = new ArrayList<>();
List<AppLiableListDto> list = dto.getList();
for (AppLiableListDto appLiableListDto : list) {
SysUserVo data = sysUserFeign.fetchBySid(appLiableListDto.getLiableSid()).getData();
receiveIdList.add(String.valueOf(data.getId()));
recipientSidList.add(appLiableListDto.getLiableSid());
}
AppPatrolinspectionDto appPatrolinspectionDto = new AppPatrolinspectionDto();
appPatrolinspectionDto.setMsgContent(sysUserVo.getName());
appPatrolinspectionDto.setList(dto.getList());
appPatrolinspectionDto.setMainSid(dto.getMainSid());
appPatrolinspectionDto.setReceiveIdList(receiveIdList);
scmVehiclePatrolinspectionsheetService.sendMessage(appPatrolinspectionDto);
AppScmMessageFlowableQuery query = new AppScmMessageFlowableQuery();
query.setMainSid(dto.getMainSid());
query.setList(recipientSidList);
query.setReceiveIdList(receiveIdList);
query.setMsgTitle("月度巡检问题");
query.setMsgContent(sysUserVo.getName() + "提交的月度巡检问题,请查阅");
query.setMsgSource("供应链");
query.setMsgTargetUri(MsgTargetUriEnum.GYLPKBG.getUri());
query.setApp_type("2");
query.setModuleSid("98ff0724-5df4-4fc7-ab6d-3996e7706acd");
query.setName("供应链");
// 消息推送
messageFeign.sendMessage(query);
return rb.success();
}

Loading…
Cancel
Save