Browse Source

Merge remote-tracking branch 'origin/master'

zhanglei
God 2 years ago
parent
commit
7d451e16c0
  1. 2
      anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/bushandoveritems/BusItemsListVo.java
  2. 3
      anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/busdepositvehicle/ScheduledService.java
  3. 4
      anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/bushandover/BusHandoverMapper.java
  4. 15
      anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/bushandover/BusHandoverMapper.xml
  5. 148
      anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/bushandover/BusHandoverService.java
  6. 2
      anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/bushandoveritems/BusHandoverItemsMapper.xml
  7. 3
      anrui-buscenter/anrui-buscenter-biz/src/main/resources/application-pro.yml
  8. 12
      anrui-buscenter/anrui-buscenter-biz/src/main/resources/ftl/entrust.ftl
  9. 12
      anrui-buscenter/anrui-buscenter-biz/src/main/resources/template_word/交车资料确认单.docx
  10. 13
      anrui-buscenter/anrui-buscenter-biz/src/main/resources/template_word/接收车辆委托书.docx
  11. 42
      anrui-buscenter/anrui-buscenter-biz/src/main/resources/template_word/接收车辆确认书.docx
  12. 2
      anrui-buscenter/anrui-finmanage-ui/src/views/anruifinmanagement/chunafukuan/chunafukuanguanli/cashier.vue
  13. 4
      anrui-scm/anrui-scm-ui/src/views/baseoutsourcingapplication/baseoutsourcingapplicationAdd.vue
  14. 4
      anrui-scm/anrui-scm-ui/src/views/baseoutsourcingapplication/workflow/baseoutsourcingapplicationAdd.vue
  15. 6
      anrui-scm/anrui-scm-ui/src/views/supplychain/cheliangpaichan/cheliangpaichanAdd.vue
  16. 49
      anrui-scm/anrui-scm-ui/src/views/supplychain/cheliangpaichan/cheliangpaichanInfo.vue
  17. 69
      anrui-scm/anrui-scm-ui/src/views/workFlow/paichanguanliFlow/paichanguanli/cheliangpaichanDaiBanInfo.vue
  18. 4
      anrui-scm/anrui-scm-ui/src/views/workFlow/paichanguanliFlow/paichanguanli/cheliangpaichanEdit.vue
  19. 49
      anrui-scm/anrui-scm-ui/src/views/workFlow/paichanguanliFlow/paichanguanli/cheliangpaichanYiBanInfo.vue
  20. 3
      anrui-terminal/anrui-terminal-biz/src/main/java/com/yxt/anrui/terminal/biz/autoservice/deliveryConfirm/DeliveryConfirmService.java

2
anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/bushandoveritems/BusItemsListVo.java

@ -16,4 +16,6 @@ public class BusItemsListVo implements Vo {
private String vinNo;
@ApiModelProperty("发动机号")
private String engineNo;
private String vinSid;
}

3
anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/busdepositvehicle/ScheduledService.java

@ -40,7 +40,8 @@ public class ScheduledService {
Calendar calendar = Calendar.getInstance();
calendar.setTime(now);
//+1今天的时间加一天
calendar.add(Calendar.DAY_OF_MONTH, -4);
// calendar.add(Calendar.DAY_OF_MONTH, -4);
calendar.add(Calendar.DAY_OF_MONTH, -2);
String tomorrow = sdf.format(calendar.getTime());
//查询简易订单-车辆预定中
//查询修改日期包含该日期的已经通过的简易订车单

4
anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/bushandover/BusHandoverMapper.java

@ -11,6 +11,8 @@ import com.yxt.anrui.buscenter.api.bushandover.BusHandoverVo;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
import java.util.List;
/**
* Project: anrui-buscenter(业务中心) <br/>
* File: BusHandoverMapper.java <br/>
@ -34,6 +36,8 @@ public interface BusHandoverMapper extends BaseMapper<BusHandover> {
BusHandoverDetailsVo details(String sid);
int selectByCount(@Param("contractNo") String contractNo, @Param("vinSidList") List<String> vinSidList);
/*//@Update("update bus_handover set name=#{msg} where id=#{id}")
//IPage<BusHandoverVo> voPage(IPage<BusHandover> page, @Param(Constants.WRAPPER) QueryWrapper<BusHandover> qw);

15
anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/bushandover/BusHandoverMapper.xml

@ -33,11 +33,11 @@
</select>-->
<select id="selectPageVo" resultType="com.yxt.anrui.buscenter.api.bushandover.BusHandoverVo">
select bh.contractNo,
select distinct bh.sid,
bh.contractNo,
bh.customerName,
bh.handoverStateValue,
bhi.modelName,
bh.sid,
(select count(*) from bus_handover_items bhi2 where bhi2.handoverSid = bh.sid) as number,
bh.handoverStateKey,
bh.recipient
@ -87,4 +87,15 @@
from bus_handover bh
where bh.sid = #{sid}
</select>
<select id="selectByCount" resultType="int">
select count(*)
from bus_handover bh
left join bus_handover_items bhi on bh.sid = bhi.handoverSid
where bh.contractNo = #{contractNo}
and bhi.vinSid in
<foreach collection="vinSidList" item="item" index="index" open="(" separator="," close=")">
#{item}
</foreach>
</select>
</mapper>

148
anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/bushandover/BusHandoverService.java

@ -7,7 +7,8 @@ import com.baomidou.mybatisplus.core.metadata.IPage;
import com.google.common.util.concurrent.ThreadFactoryBuilder;
import com.yxt.anrui.base.api.basemodelconfig.BaseModelConfigFeign;
import com.yxt.anrui.base.api.basemodelconfig.BaseModelConfigSelectVo;
import com.yxt.anrui.base.api.basevehiclemodel.BaseVehicleModelFeign;
import com.yxt.anrui.base.api.basevehicle.BaseVehicleFeign;
import com.yxt.anrui.base.api.basevehicle.BaseVehicleSelectVo;
import com.yxt.anrui.base.api.commoncontract.CommonContract;
import com.yxt.anrui.base.api.commoncontract.CommonContractFeign;
import com.yxt.anrui.base.common.enums.DictCommonEnum;
@ -87,13 +88,24 @@ public class BusHandoverService extends MybatisBaseService<BusHandoverMapper, Bu
@Autowired
private BusSalesOrderService busSalesOrderService;
@Autowired
private BaseVehicleModelFeign baseVehicleModelFeign;
@Autowired
private BaseModelConfigFeign baseModelConfigFeign;
@Autowired
private BaseVehicleFeign baseVehicleFeign;
// @Transactional(rollbackFor = Exception.class)
public ResultBean<List<BusHandoverListVo>> saveDeliverybill(BusHandoverDto dto) {
ResultBean<List<BusHandoverListVo>> rb = ResultBean.fireFail();
//ToDo:验证是否包含已存在的车辆
String contractNo = dto.getContractNo();
List<BusHanItemDto> vinList = dto.getVinList();
if(vinList.size() == 0){
return rb.setMsg("请选择车辆");
}
List<String> vinSidList = vinList.stream().map(v -> v.getVinSid()).collect(Collectors.toList());
int count = baseMapper.selectByCount(contractNo,vinSidList);
if(count>0){
return rb.setMsg("选择的车辆包含已存在交车确认记录的数据");
}
BusHandover busHandover = new BusHandover();
BeanUtil.copyProperties(dto, busHandover, "sid");
String userSid = dto.getUserSid();
@ -265,49 +277,78 @@ public class BusHandoverService extends MybatisBaseService<BusHandoverMapper, Bu
Map<String, Object> map = new HashMap<>();
//组装数据
BusHandover busHandover = fetchBySid(sid);
//合同相关信息
ResultBean<CommonContract> resultBean = commonContractFeign.selectByNo(busHandover.getContractNo());
CommonContract commonContract = resultBean.getData();
map.put("useOrgName", commonContract.getPartyA());
map.put("contractNo", busHandover.getContractNo());
//人员相关信息
ResultBean<SysStaffinfoDetailsVo> voResultBean = sysStaffinfoFeign.fetchBySid(busHandover.getStaffSid());
SysStaffinfoDetailsVo staffinfoDetailsVo = voResultBean.getData();
//客户相关信息
ResultBean<AppCrmCustomerTempInfoVo> customerTempResultBean = crmCustomerTempFeign.getAppCustomerTempDetailsBySid(commonContract.getCustomerSid());
AppCrmCustomerTempInfoVo appCrmCustomerTempInfoVo = customerTempResultBean.getData();
//销售订单相关信息
ResultBean<AppOrderDetailsVo> orderDetailsVoResultBean = busSalesOrderService.getSaleOrderDetails(busHandover.getOrderSid());
AppOrderDetailsVo appOrderDetailsVo = orderDetailsVoResultBean.getData();
AppOrderModelInfoVo appOrderModelInfoVo = appOrderDetailsVo.getModelInfo();
//车型配置相关信息
ResultBean<BaseModelConfigSelectVo> baseVehicleConfigVoResultBean = baseModelConfigFeign.details(appOrderModelInfoVo.getConfigSid());
BaseModelConfigSelectVo baseModelConfigSelectVo = baseVehicleConfigVoResultBean.getData();
List<BusItemsListVo> busItemsListVoList = busHandoverItemsService.getListOne(sid);
busItemsListVoList.removeAll(Collections.singleton(null));
for (BusItemsListVo v : busItemsListVoList) {
String vinSid = v.getVinSid();
//根据车辆sid查询车辆信息获取发动机号
ResultBean<BaseVehicleSelectVo> baseVehicleSelectVoResultBean = baseVehicleFeign.details(vinSid);
if (baseVehicleSelectVoResultBean.getSuccess()) {
BaseVehicleSelectVo baseVehicleSelectVo = baseVehicleSelectVoResultBean.getData();
if (baseVehicleSelectVo != null) {
v.setEngineNo(baseVehicleSelectVo.getEngineNo());
}
}
}
//分公司名称
map.put("useOrgName", commonContract.getPartyA());
//合同编号
map.put("contractNo", busHandover.getContractNo());
if (staffinfoDetailsVo != null) {
//业务员
map.put("staffName", staffinfoDetailsVo.getName());
}
//客户名称
map.put("customerName", busHandover.getCustomerName());
ResultBean<AppCrmCustomerTempInfoVo> customerTempResultBean = crmCustomerTempFeign.getAppCustomerTempDetailsBySid(commonContract.getCustomerSid());
AppCrmCustomerTempInfoVo appCrmCustomerTempInfoVo = customerTempResultBean.getData();
//客户身份证号
map.put("idNo", appCrmCustomerTempInfoVo.getIdNumber());
//接收人
map.put("name", busHandover.getRecipient());
//接收人身份证号
map.put("idNumber", busHandover.getIdNo());
//接收时间
map.put("date", busHandover.getDeliverDate());
//接收地点
map.put("address", busHandover.getDeliverAddress());
ResultBean<AppOrderDetailsVo> orderDetailsVoResultBean = busSalesOrderService.getSaleOrderDetails(busHandover.getOrderSid());
AppOrderDetailsVo appOrderDetailsVo = orderDetailsVoResultBean.getData();
AppOrderModelInfoVo appOrderModelInfoVo = appOrderDetailsVo.getModelInfo();
//品牌
map.put("brandName", appOrderModelInfoVo.getBrand());
//车型
map.put("model", appOrderModelInfoVo.getModelName());
ResultBean<BaseModelConfigSelectVo> baseVehicleConfigVoResultBean = baseModelConfigFeign.details(appOrderModelInfoVo.getConfigSid());
BaseModelConfigSelectVo baseModelConfigSelectVo = baseVehicleConfigVoResultBean.getData();
//车辆型号
// map.put("config","");
//颜色
map.put("color", baseModelConfigSelectVo.getCarColor());
List<BusItemsListVo> busItemsListVoList = busHandoverItemsService.getListOne(sid);
map.put("busItemsListVoList", busItemsListVoList);
// File file = new File(getClass().getClassLoader().getResource("ftl/receiveCar.ftl").getFile());
InputStream inputStream = this.getClass().getClassLoader().getResourceAsStream("ftl/receiveCar.ftl");
// String dir = getClassLoader().getResource("ftl").getPath();
//生成word文件名
String targetPath = docPdfComponent.getUploadTemplateUrl();
String dateStr = DateUtil.format(new Date(), "yyyyMMdd");
long seconds = System.currentTimeMillis();
String typeName = dateStr + seconds + ".doc";
File file = new File(targetPath + "receiveCar"+seconds+".ftl");
File file = new File(targetPath + "receiveCar" + seconds + ".ftl");
File dir = new File(targetPath);
WordConvertUtils.inputStreamToFile(inputStream, file);
WordConvertUtils.creatWord1(map, file, targetPath, typeName, dir);
//新生成的word路径
String wordPath = targetPath + typeName;
//生成出门证文件名
String pdfName = "接收车辆确认书_"+dateStr + seconds + ".pdf";
//生成文件名
String pdfName = "接收车辆确认书_" + dateStr + seconds + ".pdf";
WordConvertUtils.doc2pdf(wordPath, targetPath, pdfName);
return pdfName;
}
@ -325,33 +366,31 @@ public class BusHandoverService extends MybatisBaseService<BusHandoverMapper, Bu
BusHandover busHandover = fetchBySid(sid);
ResultBean<CommonContract> resultBean = commonContractFeign.selectByNo(busHandover.getContractNo());
CommonContract commonContract = resultBean.getData();
map.put("orgName", commonContract.getPartyA());
map.put("customerName", commonContract.getPartyB());
ResultBean<AppCrmCustomerTempInfoVo> customerTempResultBean = crmCustomerTempFeign.getAppCustomerTempDetailsBySid(commonContract.getCustomerSid());
AppCrmCustomerTempInfoVo appCrmCustomerTempInfoVo = customerTempResultBean.getData();
List<BusItemVo> list = busHandoverItemsService.getList(sid);
List<String> stringList = list.stream().map(v -> v.getVinNo()).collect(Collectors.toList());
map.put("orgName", commonContract.getPartyA());
map.put("customerName", commonContract.getPartyB());
map.put("idNo", appCrmCustomerTempInfoVo.getIdNumber());
map.put("name", busHandover.getRecipient());
map.put("idNumber", busHandover.getIdNo());
map.put("contractNo", busHandover.getContractNo());
List<BusItemVo> list = busHandoverItemsService.getList(sid);
List<String> stringList = list.stream().map(v -> v.getVinNo()).collect(Collectors.toList());
map.put("vinNo", String.join(",", stringList));
// File file = new File(getClass().getClassLoader().getResource("ftl/entrust.ftl").getFile());
InputStream inputStream = this.getClass().getClassLoader().getResourceAsStream("ftl/entrust.ftl");
// String dir = getClassLoader().getResource("ftl").getPath();
//生成word文件名
String targetPath = docPdfComponent.getUploadTemplateUrl();
String dateStr = DateUtil.format(new Date(), "yyyyMMdd");
long seconds = System.currentTimeMillis();
String typeName = dateStr + seconds + ".doc";
File file = new File(targetPath + "entrust"+seconds+".ftl");
File file = new File(targetPath + "entrust" + seconds + ".ftl");
File dir = new File(targetPath);
WordConvertUtils.inputStreamToFile(inputStream, file);
WordConvertUtils.creatWord1(map, file, targetPath, typeName, dir);
//新生成的word路径
String wordPath = targetPath + typeName;
//生成文件名
String pdfName = "委托提车授权书_"+dateStr + seconds + ".pdf";
String pdfName = "委托提车授权书_" + dateStr + seconds + ".pdf";
WordConvertUtils.doc2pdf(wordPath, targetPath, pdfName);
return pdfName;
}
@ -370,22 +409,20 @@ public class BusHandoverService extends MybatisBaseService<BusHandoverMapper, Bu
map.put("customerName", busHandover.getCustomerName());
List<BusItemVo> list = busHandoverItemsService.getList(sid);
map.put("list", list);
// File file = new File(getClass().getClassLoader().getResource("ftl/entrustConfirm.ftl").getFile());
// String dir = getClassLoader().getResource("ftl").getPath();
InputStream inputStream = this.getClass().getClassLoader().getResourceAsStream("ftl/entrustConfirm.ftl");
//生成word文件名
String targetPath = docPdfComponent.getUploadTemplateUrl();
String dateStr = DateUtil.format(new Date(), "yyyyMMdd");
long seconds = System.currentTimeMillis();
String typeName = dateStr + seconds + ".doc";
File file = new File(targetPath + "entrustConfirm"+seconds+".ftl");
File file = new File(targetPath + "entrustConfirm" + seconds + ".ftl");
File dir = new File(targetPath);
WordConvertUtils.inputStreamToFile(inputStream, file);
WordConvertUtils.creatWord1(map, file, targetPath, typeName, dir);
//新生成的word路径
String wordPath = targetPath + typeName;
//生成文件名
String pdfName = "交车资料确认单_"+dateStr + seconds + ".pdf";
String pdfName = "交车资料确认单_" + dateStr + seconds + ".pdf";
WordConvertUtils.doc2pdf(wordPath, targetPath, pdfName);
return pdfName;
}
@ -396,11 +433,14 @@ public class BusHandoverService extends MybatisBaseService<BusHandoverMapper, Bu
BusHandover busHandover = fetchBySid(sid);
ResultBean<SysStaffinfoDetailsVo> voResultBean = sysStaffinfoFeign.fetchBySid(busHandover.getStaffSid());
SysStaffinfoDetailsVo staffinfoDetailsVo = voResultBean.getData();
ResultBean<CommonContract> resultBean = commonContractFeign.selectByNo(busHandover.getContractNo());
CommonContract commonContract = resultBean.getData();
ResultBean<AppOrderDetailsVo> orderDetailsVoResultBean = busSalesOrderService.getSaleOrderDetails(busHandover.getOrderSid());
AppOrderDetailsVo appOrderDetailsVo = orderDetailsVoResultBean.getData();
AppOrderModelInfoVo appOrderModelInfoVo = appOrderDetailsVo.getModelInfo();
if (staffinfoDetailsVo != null) {
map.put("apply", staffinfoDetailsVo.getName());
}
ResultBean<CommonContract> resultBean = commonContractFeign.selectByNo(busHandover.getContractNo());
CommonContract commonContract = resultBean.getData();
map.put("orgName", commonContract.getPartyA());
map.put("name", busHandover.getCustomerName());
List<BusItemVo> list = busHandoverItemsService.getList(sid);
@ -411,26 +451,21 @@ public class BusHandoverService extends MybatisBaseService<BusHandoverMapper, Bu
map.put("operator", staffinfoDetailsVo.getName());
map.put("carCollector", "-");
map.put("date", busHandover.getDeliverDate());
ResultBean<AppOrderDetailsVo> orderDetailsVoResultBean = busSalesOrderService.getSaleOrderDetails(busHandover.getOrderSid());
AppOrderDetailsVo appOrderDetailsVo = orderDetailsVoResultBean.getData();
AppOrderModelInfoVo appOrderModelInfoVo = appOrderDetailsVo.getModelInfo();
map.put("modelName", appOrderModelInfoVo.getModelName());
// File file = new File(getClass().getClassLoader().getResource("ftl/outdoor.ftl").getFile());
// String dir = getClassLoader().getResource("ftl").getPath();
InputStream inputStream = this.getClass().getClassLoader().getResourceAsStream("ftl/outdoor.ftl");
//生成word文件名
String targetPath = docPdfComponent.getUploadTemplateUrl();
String dateStr = DateUtil.format(new Date(), "yyyyMMdd");
long seconds = System.currentTimeMillis();
String typeName = dateStr + seconds + ".doc";
File file = new File(targetPath + "outdoor"+seconds+".ftl");
File file = new File(targetPath + "outdoor" + seconds + ".ftl");
File dir = new File(targetPath);
WordConvertUtils.inputStreamToFile(inputStream, file);
WordConvertUtils.creatWord1(map, file, targetPath, typeName, dir);
//新生成的word路径
String wordPath = targetPath + typeName;
//生成出门证文件名
String pdfName = "出门证_"+dateStr + seconds + ".pdf";
String pdfName = "出门证_" + dateStr + seconds + ".pdf";
WordConvertUtils.doc2pdf(wordPath, targetPath, pdfName);
return pdfName;
}
@ -462,28 +497,37 @@ public class BusHandoverService extends MybatisBaseService<BusHandoverMapper, Bu
List<DownloadVo> stringList = new ArrayList<>();
DownloadVo vo = new DownloadVo();
BuscenterFile buscenterFile = buscenterFileService.selectByLinkSidOne(record.getSid(), BuscenterFileEnum.RECEIVE_CAR.getAttachType());
vo.setName(buscenterFile.getFileName());
vo.setDownloadUrl(docPdfComponent.getPrefixTemplateUrl() + buscenterFile.getFilePath());
stringList.add(vo);
if(buscenterFile != null){
vo.setName(buscenterFile.getFileName());
vo.setDownloadUrl(docPdfComponent.getPrefixTemplateUrl() + buscenterFile.getFilePath());
stringList.add(vo);
}
vo = new DownloadVo();
buscenterFile = buscenterFileService.selectByLinkSidOne(record.getSid(), BuscenterFileEnum.ENTRUST_CONFIRM.getAttachType());
vo.setName(buscenterFile.getFileName());
vo.setDownloadUrl(docPdfComponent.getPrefixTemplateUrl() + buscenterFile.getFilePath());
stringList.add(vo);
if(!record.getCustomerName().equals(record.getRecipient())){
vo = new DownloadVo();
buscenterFile = buscenterFileService.selectByLinkSidOne(record.getSid(), BuscenterFileEnum.ENTRUST.getAttachType());
if(buscenterFile != null){
vo.setName(buscenterFile.getFileName());
vo.setDownloadUrl(docPdfComponent.getPrefixTemplateUrl() + buscenterFile.getFilePath());
stringList.add(vo);
}
if (!record.getCustomerName().equals(record.getRecipient())) {
vo = new DownloadVo();
buscenterFile = buscenterFileService.selectByLinkSidOne(record.getSid(), BuscenterFileEnum.ENTRUST.getAttachType());
if(buscenterFile != null){
vo.setName(buscenterFile.getFileName());
vo.setDownloadUrl(docPdfComponent.getPrefixTemplateUrl() + buscenterFile.getFilePath());
stringList.add(vo);
}
}
vo = new DownloadVo();
buscenterFile = buscenterFileService.selectByLinkSidOne(record.getSid(), BuscenterFileEnum.EXIT_TICKET.getAttachType());
vo.setName(buscenterFile.getFileName());
vo.setDownloadUrl(docPdfComponent.getPrefixTemplateUrl() + buscenterFile.getFilePath());
stringList.add(vo);
if(buscenterFile != null){
vo.setName(buscenterFile.getFileName());
vo.setDownloadUrl(docPdfComponent.getPrefixTemplateUrl() + buscenterFile.getFilePath());
stringList.add(vo);
}
record.setFileResps(stringList);
}

2
anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/bushandoveritems/BusHandoverItemsMapper.xml

@ -39,7 +39,7 @@
</select>
<select id="getListOne" resultType="com.yxt.anrui.buscenter.api.bushandoveritems.BusItemsListVo">
select vinNo
select vinNo,vinSid
from bus_handover_items
where handoverSid = #{sid}
</select>

3
anrui-buscenter/anrui-buscenter-biz/src/main/resources/application-pro.yml

@ -25,4 +25,7 @@ image:
path: D:\\anrui\\upload\\
url:
prefix: http://120.46.172.184/api/upload/
templateUrl:
uploadUrl: D:\anrui\upload\template\
prefixUrl: http://120.46.172.184/api/upload/template/

12
anrui-buscenter/anrui-buscenter-biz/src/main/resources/ftl/entrust.ftl

@ -988,7 +988,7 @@
<w:sz w:val="28"/>
<w:sz-cs w:val="28"/>
</w:rPr>
<w:t>年</w:t>
<w:t> 年</w:t>
</w:r>
<w:r>
<w:rPr>
@ -1007,7 +1007,7 @@
<w:sz w:val="28"/>
<w:sz-cs w:val="28"/>
</w:rPr>
<w:t>月</w:t>
<w:t> 月</w:t>
</w:r>
<w:r>
<w:rPr>
@ -1026,7 +1026,7 @@
<w:sz w:val="28"/>
<w:sz-cs w:val="28"/>
</w:rPr>
<w:t>日至</w:t>
<w:t> 日至</w:t>
</w:r>
<w:r>
<w:rPr>
@ -1045,7 +1045,7 @@
<w:sz w:val="28"/>
<w:sz-cs w:val="28"/>
</w:rPr>
<w:t>年</w:t>
<w:t> 年</w:t>
</w:r>
<w:r>
<w:rPr>
@ -1064,7 +1064,7 @@
<w:sz w:val="28"/>
<w:sz-cs w:val="28"/>
</w:rPr>
<w:t>月</w:t>
<w:t> 月</w:t>
</w:r>
<w:r>
<w:rPr>
@ -1083,7 +1083,7 @@
<w:sz w:val="28"/>
<w:sz-cs w:val="28"/>
</w:rPr>
<w:t>日</w:t>
<w:t> 日</w:t>
</w:r>
</w:p>
<w:sectPr wsp:rsidR="00166AB3">

12
anrui-buscenter/anrui-buscenter-biz/src/main/resources/template_word/交车资料确认单.docx

@ -0,0 +1,12 @@
交车资料确认单
合同编号:
${contractNo}
客户名称:
${customerName}
序号
车架号
交车资料
${sortNo}
${vinNo}
${item}

13
anrui-buscenter/anrui-buscenter-biz/src/main/resources/template_word/接收车辆委托书.docx

@ -0,0 +1,13 @@
接收车辆委托书
${orgName} (公司):
委托人: ${customerName} 身份证号码: ${idNo}
受委托人姓名: ${name} 身份证号码: ${idNumber}
委托人与贵司签订了编号为 ${contractNo} 的《车辆买卖合同》,现因委托人无法亲自到场办理提车手续及提取车架号: ${vinNo} 的车辆。兹授权受委托人代替本委托人到贵司指定地点现场办理该车的提车手续,签订《接收车辆确认书》等相关提车文件。由此产生的相关法律后果均由本委托人承担。
委托人签字或盖章:
授权期限: 年 月 日至 年 月 日

42
anrui-buscenter/anrui-buscenter-biz/src/main/resources/template_word/接收车辆确认书.docx

@ -0,0 +1,42 @@
接收车辆确认书
交 付 人
${useOrgName}
经 办 人
${staffName}
合同编号
${contractNo}
购 买 人
${customerName}
身份证号
${idNo}
接 收 人
${name}
身份证号
${idNumber}
接收时间
${date}
接收地点
${address}
接 收 车 辆 信 息
品 牌
${brandName}
名 称
${model}
车辆型号
${config}
颜 色
${color}
序号
车 架 号
发动机号
${sortNo}
${vinNo}
${engineNo}
经验收,随车工具齐全,车辆状况良好,已接收车辆。
接收人签字(手印)或盖章:
联系电话:
_____ 年____ 月___ 日

2
anrui-buscenter/anrui-finmanage-ui/src/views/anruifinmanagement/chunafukuan/chunafukuanguanli/cashier.vue

@ -493,7 +493,7 @@ export default {
FJ.onload = function(e) {
//
var blob = this.response
var filename = '合同附件' + resp.data.fjType
var filename = '申请附件' + resp.data.fjType
var a = document.createElement('a')
// blob.type="application/octet-stream";
// url

4
anrui-scm/anrui-scm-ui/src/views/baseoutsourcingapplication/baseoutsourcingapplicationAdd.vue

@ -779,6 +779,10 @@ export default {
this.$message({ showClose: true, type: 'error', message: '因其中订金不为0,订金账户不能为空' })
return
}
if (this.formobj.isSaleOrgApproval === '1' && this.formobj.approvalName === '') {
this.$message({ showClose: true, type: 'error', message: '因是否销售部审批选择是,则销售经理不能为空' })
return
}
//
this.formobj.userSid = window.sessionStorage.getItem('userSid')
this.formobj.orgSid = this.$store.getters.orgSid

4
anrui-scm/anrui-scm-ui/src/views/baseoutsourcingapplication/workflow/baseoutsourcingapplicationAdd.vue

@ -599,6 +599,10 @@ export default {
this.$message({ showClose: true, type: 'error', message: '因其中订金不为0,订金账户不能为空' })
return
}
if (this.formobj.isSaleOrgApproval === '1' && this.formobj.approvalName === '') {
this.$message({ showClose: true, type: 'error', message: '因是否销售部审批选择是,则销售经理不能为空' })
return
}
//
this.formobj.userSid = window.sessionStorage.getItem('userSid')
this.formobj.orgSid = this.$store.getters.orgSid

6
anrui-scm/anrui-scm-ui/src/views/supplychain/cheliangpaichan/cheliangpaichanAdd.vue

@ -18,7 +18,7 @@
<!--Start 新增修改部分-->
<div class="listconadd">
<div class="titwu"><span>厂家采购</span></div>
<el-form ref="form_obj" :model="formobj" :rules="rules" class="formaddcopy02">
<el-form ref="form_obj" :model="formobj" :rules="rules" label-position="right" class="formaddcopy02">
<el-row class="rowStyle">
<el-col :span="6" class="colOneStyle">
<div class="span-sty spanOneWidth"><span>分公司:</span></div>
@ -699,10 +699,10 @@ export default {
}
.spanOneWidth {
border-right: 0px !important;
width: 120px !important;
width: 100px !important;
}
.addinputOne {
margin-left: 110px !important;
margin-left: 90px !important;
}
.rowStyle {
border-left: 0px;

49
anrui-scm/anrui-scm-ui/src/views/supplychain/cheliangpaichan/cheliangpaichanInfo.vue

@ -18,51 +18,51 @@
<el-row class="rowStyle">
<el-col :span="6" class="colOneStyle">
<div class="span-sty spanOneWidth"><span>分公司:</span></div>
<el-form-item><span class="addinputInfo addinputOne">{{ formobj.createOrgName }}</span></el-form-item>
<el-form-item class="addinputOne"><span class="">{{ formobj.createOrgName }}</span></el-form-item>
</el-col>
<el-col :span="6" class="colOneStyle">
<div class="span-sty spanOneWidth"><span>采购系统:</span></div>
<el-form-item><span class="addinputInfo addinputOne">{{ formobj.orgDeptName }}</span></el-form-item>
<el-form-item class="addinputOne"><span class="">{{ formobj.orgDeptName }}</span></el-form-item>
</el-col>
<el-col :span="6" class="colOneStyle">
<div class="span-sty spanOneWidth"><span>申请人:</span></div>
<el-form-item><span class="addinputInfo addinputOne">{{ formobj.createByName }}</span></el-form-item>
<el-form-item class="addinputOne"><span class="">{{ formobj.createByName }}</span></el-form-item>
</el-col>
<el-col :span="6" class="colOneStyle">
<div class="span-sty spanOneWidth"><span>申请日期:</span></div>
<el-form-item><span class="addinputInfo addinputOne">{{ formobj.applicationDate }}</span></el-form-item>
<el-form-item class="addinputOne"><span class="">{{ formobj.applicationDate }}</span></el-form-item>
</el-col>
</el-row>
<el-row class="rowStyle">
<el-col :span="8" class="colStyle">
<div class="span-sty spanOneWidth"><span>采购类型:</span></div>
<el-form-item><span class="addinputInfo addinputOne">{{ formobj.applyType }}</span>
<el-form-item class="addinputOne"><span class="">{{ formobj.applyType }}</span>
</el-form-item>
</el-col>
<el-col :span="8" class="colStyle">
<div class="span-sty spanOneWidth"><span>采购原因:</span></div>
<el-form-item><span class="addinputInfo addinputOne">{{ formobj.schedulingType }}</span>
<el-form-item class="addinputOne"><span class="">{{ formobj.schedulingType }}</span>
</el-form-item>
</el-col>
<el-col :span="8" class="colStyle">
<div class="span-sty spanOneWidth"><span>品牌:</span></div>
<el-form-item><span class="addinputInfo addinputOne">{{ formobj.carBrandName }}</span>
<el-form-item class="addinputOne"><span class="">{{ formobj.carBrandName }}</span>
</el-form-item>
</el-col>
</el-row>
<el-row class="rowStyle">
<el-col :span="8" class="colStyle">
<div class="span-sty spanOneWidth"><span>订金付款备注:</span></div>
<el-form-item><span class="addinputInfo addinputOne">{{ formobj.payRemarks }}</span>
<el-form-item class="addinputOne"><span class="">{{ formobj.payRemarks }}</span>
</el-form-item>
</el-col>
<el-col :span="8" class="colStyle">
<div class="span-sty spanOneWidth"><span>备注:</span></div>
<el-form-item><span class="addinputInfo addinputOne">{{ formobj.remarks }}</span></el-form-item>
<el-form-item class="addinputOne"><span class="">{{ formobj.remarks }}</span></el-form-item>
</el-col>
<el-col :span="8" class="colStyle">
<div class="span-sty spanOneWidth" v-show="formobj.schedulingType === '储备'"><span>销售经理:</span></div>
<el-form-item v-show="formobj.schedulingType === '储备'"><span class="addinputInfo addinputOne">{{ formobj.userNames }}</span></el-form-item>
<el-form-item v-show="formobj.schedulingType === '储备'" class="addinputOne"><span class="">{{ formobj.userNames }}</span></el-form-item>
</el-col>
</el-row>
<div class="title">
@ -266,10 +266,10 @@ export default {
<style scoped>
.spanOneWidth {
border-right: 0px !important;
width: 120px !important;
width: 100px !important;
}
.addinputOne {
margin-left: 110px !important;
margin-left: 90px !important;
}
.rowStyle {
border-left: 0px;
@ -277,9 +277,34 @@ export default {
.colStyle {
border-right: 0px !important;
border-bottom: 0px !important;
display: flex;
flex-direction: row;
justify-content: flex-start;
align-items: center;
}
.colOneStyle {
border-right: 0px !important;
display: flex;
flex-direction: row;
justify-content: flex-start;
align-items: center;
}
.addinputInfo {
margin-left: 0px !important;
}
/deep/ .colOneStyle .el-form-item .el-form-item__content {
line-height: 15px !important;
display: flex;
flex-direction: row;
justify-content: flex-start;
align-items: center;
}
/deep/ .colStyle .el-form-item .el-form-item__content {
line-height: 15px !important;
display: flex;
flex-direction: row;
justify-content: flex-start;
align-items: center;
}
</style>

69
anrui-scm/anrui-scm-ui/src/views/workFlow/paichanguanliFlow/paichanguanli/cheliangpaichanDaiBanInfo.vue

@ -20,51 +20,51 @@
<el-row class="rowStyle">
<el-col :span="6" class="colOneStyle">
<div class="span-sty spanOneWidth"><span>分公司:</span></div>
<el-form-item><span class="addinputInfo addinputOne">{{ formobj.createOrgName }}</span></el-form-item>
<el-form-item class="addinputOne"><span class="">{{ formobj.createOrgName }}</span></el-form-item>
</el-col>
<el-col :span="6" class="colOneStyle">
<div class="span-sty spanOneWidth"><span>采购系统:</span></div>
<el-form-item><span class="addinputInfo addinputOne">{{ formobj.orgDeptName }}</span></el-form-item>
<el-form-item class="addinputOne"><span class="">{{ formobj.orgDeptName }}</span></el-form-item>
</el-col>
<el-col :span="6" class="colOneStyle">
<div class="span-sty spanOneWidth"><span>申请人:</span></div>
<el-form-item><span class="addinputInfo addinputOne">{{ formobj.createByName }}</span></el-form-item>
<el-form-item class="addinputOne"><span class="">{{ formobj.createByName }}</span></el-form-item>
</el-col>
<el-col :span="6" class="colOneStyle">
<div class="span-sty spanOneWidth"><span>申请日期:</span></div>
<el-form-item><span class="addinputInfo addinputOne">{{ formobj.applicationDate }}</span></el-form-item>
<el-form-item class="addinputOne"><span class="">{{ formobj.applicationDate }}</span></el-form-item>
</el-col>
</el-row>
<el-row class="rowStyle">
<el-col :span="8" class="colStyle">
<div class="span-sty spanOneWidth"><span>采购类型:</span></div>
<el-form-item><span class="addinputInfo addinputOne">{{ formobj.applyType }}</span>
<el-form-item class="addinputOne"><span class="">{{ formobj.applyType }}</span>
</el-form-item>
</el-col>
<el-col :span="8" class="colStyle">
<div class="span-sty spanOneWidth"><span>采购原因:</span></div>
<el-form-item><span class="addinputInfo addinputOne">{{ formobj.schedulingType }}</span>
<el-form-item class="addinputOne"><span class="">{{ formobj.schedulingType }}</span>
</el-form-item>
</el-col>
<el-col :span="8" class="colStyle">
<div class="span-sty spanOneWidth"><span>品牌:</span></div>
<el-form-item><span class="addinputInfo addinputOne">{{ formobj.carBrandName }}</span>
<el-form-item class="addinputOne"><span class="">{{ formobj.carBrandName }}</span>
</el-form-item>
</el-col>
</el-row>
<el-row class="rowStyle">
<el-col :span="8" class="colStyle">
<div class="span-sty spanOneWidth"><span>订金付款备注:</span></div>
<el-form-item><span class="addinputInfo addinputOne">{{ formobj.payRemarks }}</span>
<el-form-item class="addinputOne"><span class="">{{ formobj.payRemarks }}</span>
</el-form-item>
</el-col>
<el-col :span="8" class="colStyle">
<div class="span-sty spanOneWidth"><span>备注:</span></div>
<el-form-item><span class="addinputInfo addinputOne">{{ formobj.remarks }}</span></el-form-item>
<el-form-item class="addinputOne"><span class="">{{ formobj.remarks }}</span></el-form-item>
</el-col>
<el-col :span="8" class="colStyle">
<div class="span-sty spanOneWidth" v-show="formobj.schedulingType === '储备'"><span>销售经理:</span></div>
<el-form-item v-show="formobj.schedulingType === '储备'"><span class="addinputInfo addinputOne">{{ formobj.userNames }}</span></el-form-item>
<el-form-item v-show="formobj.schedulingType === '储备'" class="addinputOne"><span class="">{{ formobj.userNames }}</span></el-form-item>
</el-col>
</el-row>
<div class="title">
@ -139,17 +139,21 @@
<!--End 添加修改部分-->
<!-- 选择待办人 的弹出框-->
<el-dialog title="填写审批意见" :visible.sync="nodeDialogVisible" width="80%">
<el-form class="formaddcopy02" >
<el-form class="formadd" >
<el-row v-show="currentLink" style="border-top: 1px solid #e0e3eb">
<el-col :span="24">
<div class="span-sty spanTwoWidth"><span>当前环节:</span></div>
<el-form-item><span class="addinputInfo addinputOne">{{ current.taskName }}->{{ nextNode.name }}</span></el-form-item>
<el-col :span="4" class="tleftb">
<span>当前环节:</span>
</el-col>
<el-col :span="20">
<el-form-item><span>{{ current.taskName }}->{{ nextNode.name }}</span></el-form-item>
</el-col>
</el-row>
<el-row :class="{rowClass:!currentLink}">
<el-col :span="24">
<div class="span-sty spanTwoWidth"><span>意见:</span></div>
<el-form-item><el-input size="small" v-model="dialogList.comment" placeholder="审批意见" class="addinputw addinputOne" clearable ></el-input></el-form-item>
<el-col :span="4" class="tleftb">
<span>意见:</span>
</el-col>
<el-col :span="20">
<el-form-item><el-input size="small" v-model="dialogList.comment" placeholder="审批意见" class="addinputw" clearable ></el-input></el-form-item>
</el-col>
</el-row>
<div style="text-align:center;margin-top: 20px;">
@ -460,10 +464,10 @@ export default {
}
.spanOneWidth {
border-right: 0px !important;
width: 120px !important;
width: 100px !important;
}
.addinputOne {
margin-left: 110px !important;
margin-left: 90px !important;
}
.rowStyle {
border-left: 0px;
@ -471,13 +475,34 @@ export default {
.colStyle {
border-right: 0px !important;
border-bottom: 0px !important;
display: flex;
flex-direction: row;
justify-content: flex-start;
align-items: center;
}
.colOneStyle {
border-right: 0px !important;
display: flex;
flex-direction: row;
justify-content: flex-start;
align-items: center;
}
.spanTwoWidth {
width: 120px !important;
.addinputInfo {
margin-left: 0px !important;
}
/deep/ .colOneStyle .el-form-item .el-form-item__content {
line-height: 15px !important;
display: flex;
flex-direction: row;
justify-content: flex-start;
align-items: center;
}
/deep/ .colStyle .el-form-item .el-form-item__content {
line-height: 15px !important;
display: flex;
flex-direction: row;
justify-content: flex-start;
align-items: center;
}
.rowClass{
border-top: 1px solid #E0E3EB;

4
anrui-scm/anrui-scm-ui/src/views/workFlow/paichanguanliFlow/paichanguanli/cheliangpaichanEdit.vue

@ -658,10 +658,10 @@ export default {
}
.spanOneWidth {
border-right: 0px !important;
width: 120px !important;
width: 100px !important;
}
.addinputOne {
margin-left: 110px !important;
margin-left: 90px !important;
}
.rowStyle {
border-left: 0px;

49
anrui-scm/anrui-scm-ui/src/views/workFlow/paichanguanliFlow/paichanguanli/cheliangpaichanYiBanInfo.vue

@ -18,51 +18,51 @@
<el-row class="rowStyle">
<el-col :span="6" class="colOneStyle">
<div class="span-sty spanOneWidth"><span>分公司:</span></div>
<el-form-item><span class="addinputInfo addinputOne">{{ formobj.createOrgName }}</span></el-form-item>
<el-form-item class="addinputOne"><span class="">{{ formobj.createOrgName }}</span></el-form-item>
</el-col>
<el-col :span="6" class="colOneStyle">
<div class="span-sty spanOneWidth"><span>采购系统:</span></div>
<el-form-item><span class="addinputInfo addinputOne">{{ formobj.orgDeptName }}</span></el-form-item>
<el-form-item class="addinputOne"><span class="">{{ formobj.orgDeptName }}</span></el-form-item>
</el-col>
<el-col :span="6" class="colOneStyle">
<div class="span-sty spanOneWidth"><span>申请人:</span></div>
<el-form-item><span class="addinputInfo addinputOne">{{ formobj.createByName }}</span></el-form-item>
<el-form-item class="addinputOne"><span class="">{{ formobj.createByName }}</span></el-form-item>
</el-col>
<el-col :span="6" class="colOneStyle">
<div class="span-sty spanOneWidth"><span>申请日期:</span></div>
<el-form-item><span class="addinputInfo addinputOne">{{ formobj.applicationDate }}</span></el-form-item>
<el-form-item class="addinputOne"><span class="">{{ formobj.applicationDate }}</span></el-form-item>
</el-col>
</el-row>
<el-row class="rowStyle">
<el-col :span="8" class="colStyle">
<div class="span-sty spanOneWidth"><span>采购类型:</span></div>
<el-form-item><span class="addinputInfo addinputOne">{{ formobj.applyType }}</span>
<el-form-item class="addinputOne"><span class="">{{ formobj.applyType }}</span>
</el-form-item>
</el-col>
<el-col :span="8" class="colStyle">
<div class="span-sty spanOneWidth"><span>采购原因:</span></div>
<el-form-item><span class="addinputInfo addinputOne">{{ formobj.schedulingType }}</span>
<el-form-item class="addinputOne"><span class="">{{ formobj.schedulingType }}</span>
</el-form-item>
</el-col>
<el-col :span="8" class="colStyle">
<div class="span-sty spanOneWidth"><span>品牌:</span></div>
<el-form-item><span class="addinputInfo addinputOne">{{ formobj.carBrandName }}</span>
<el-form-item class="addinputOne"><span class="">{{ formobj.carBrandName }}</span>
</el-form-item>
</el-col>
</el-row>
<el-row class="rowStyle">
<el-col :span="8" class="colStyle">
<div class="span-sty spanOneWidth"><span>订金付款备注:</span></div>
<el-form-item><span class="addinputInfo addinputOne">{{ formobj.payRemarks }}</span>
<el-form-item class="addinputOne"><span class="">{{ formobj.payRemarks }}</span>
</el-form-item>
</el-col>
<el-col :span="8" class="colStyle">
<div class="span-sty spanOneWidth"><span>备注:</span></div>
<el-form-item><span class="addinputInfo addinputOne">{{ formobj.remarks }}</span></el-form-item>
<el-form-item class="addinputOne"><span class="">{{ formobj.remarks }}</span></el-form-item>
</el-col>
<el-col :span="8" class="colStyle">
<div class="span-sty spanOneWidth" v-show="formobj.schedulingType === '储备'"><span>销售经理:</span></div>
<el-form-item v-show="formobj.schedulingType === '储备'"><span class="addinputInfo addinputOne">{{ formobj.userNames }}</span></el-form-item>
<el-form-item v-show="formobj.schedulingType === '储备'" class="addinputOne"><span class="">{{ formobj.userNames }}</span></el-form-item>
</el-col>
</el-row>
<div class="title">
@ -313,10 +313,10 @@ export default {
}
.spanOneWidth {
border-right: 0px !important;
width: 120px !important;
width: 100px !important;
}
.addinputOne {
margin-left: 110px !important;
margin-left: 90px !important;
}
.rowStyle {
border-left: 0px;
@ -324,8 +324,33 @@ export default {
.colStyle {
border-right: 0px !important;
border-bottom: 0px !important;
display: flex;
flex-direction: row;
justify-content: flex-start;
align-items: center;
}
.colOneStyle {
border-right: 0px !important;
display: flex;
flex-direction: row;
justify-content: flex-start;
align-items: center;
}
.addinputInfo {
margin-left: 0px !important;
}
/deep/ .colOneStyle .el-form-item .el-form-item__content {
line-height: 15px !important;
display: flex;
flex-direction: row;
justify-content: flex-start;
align-items: center;
}
/deep/ .colStyle .el-form-item .el-form-item__content {
line-height: 15px !important;
display: flex;
flex-direction: row;
justify-content: flex-start;
align-items: center;
}
</style>

3
anrui-terminal/anrui-terminal-biz/src/main/java/com/yxt/anrui/terminal/biz/autoservice/deliveryConfirm/DeliveryConfirmService.java

@ -68,6 +68,9 @@ public class DeliveryConfirmService {
BusHandoverDto busHandoverDto = new BusHandoverDto();
BeanUtil.copyProperties(dto, busHandoverDto);
ResultBean<List<BusHandoverListVo>> resultBean = busHandoverFeign.saveDeliverybill(busHandoverDto);
if(!resultBean.getSuccess()){
return rb.setMsg(resultBean.getMsg());
}
List<DeliveryBillListVo> list = Optional.ofNullable(resultBean.getData()).orElse(new ArrayList<>()).stream().map(m -> JSON.parseObject(JSON.toJSONString(m), DeliveryBillListVo.class)).collect(Collectors.toList());
return rb.success().setData(list);
}

Loading…
Cancel
Save