提交 e0b6c482 编写于 作者: ibizdev's avatar ibizdev

xignzi006 发布系统代码

上级 099e2497
/**
* 电话联络
*
* @export
* @interface PhoneCall
*/
export interface PhoneCall {
/**
* UTC 转换时区代码
*
* @returns {*}
* @memberof PhoneCall
*/
utcconversiontimezonecode?: any;
/**
* 遍历的路径
*
* @returns {*}
* @memberof PhoneCall
*/
traversedpath?: any;
/**
* 关于
*
* @returns {*}
* @memberof PhoneCall
*/
regardingobjectid?: any;
/**
* 导入序列号
*
* @returns {*}
* @memberof PhoneCall
*/
importsequencenumber?: any;
/**
* 更新人
*
* @returns {*}
* @memberof PhoneCall
*/
updateman?: any;
/**
* 创建记录的时间
*
* @returns {*}
* @memberof PhoneCall
*/
overriddencreatedon?: any;
/**
* 上一暂候时间
*
* @returns {*}
* @memberof PhoneCall
*/
lastonholdtime?: any;
/**
* 呼叫方
*
* @returns {*}
* @memberof PhoneCall
*/
from?: any;
/**
* 建立时间
*
* @returns {*}
* @memberof PhoneCall
*/
createdate?: any;
/**
* 电话号码
*
* @returns {*}
* @memberof PhoneCall
*/
phonenumber?: any;
/**
* 说明
*
* @returns {*}
* @memberof PhoneCall
*/
description?: any;
/**
* 主题
*
* @returns {*}
* @memberof PhoneCall
*/
subject?: any;
/**
* 排序日期
*
* @returns {*}
* @memberof PhoneCall
*/
sortdate?: any;
/**
* 实际结束时间
*
* @returns {*}
* @memberof PhoneCall
*/
actualend?: any;
/**
* 状态描述
*
* @returns {*}
* @memberof PhoneCall
*/
statuscode?: any;
/**
* 建立人
*
* @returns {*}
* @memberof PhoneCall
*/
createman?: any;
/**
* 方向
*
* @returns {*}
* @memberof PhoneCall
*/
directioncode?: any;
/**
* 实际开始时间
*
* @returns {*}
* @memberof PhoneCall
*/
actualstart?: any;
/**
* 活动状态
*
* @returns {*}
* @memberof PhoneCall
*/
statecode?: any;
/**
* 暂候时间(分钟)
*
* @returns {*}
* @memberof PhoneCall
*/
onholdtime?: any;
/**
* 保留的语音邮件
*
* @returns {*}
* @memberof PhoneCall
*/
leftvoicemail?: any;
/**
* 持续时间
*
* @returns {*}
* @memberof PhoneCall
*/
actualdurationminutes?: any;
/**
* RegardingObjectIdYomiName
*
* @returns {*}
* @memberof PhoneCall
*/
regardingobjectidyominame?: any;
/**
* OwnerIdType
*
* @returns {*}
* @memberof PhoneCall
*/
owneridtype?: any;
/**
* 版本号
*
* @returns {*}
* @memberof PhoneCall
*/
versionnumber?: any;
/**
* 流程
*
* @returns {*}
* @memberof PhoneCall
*/
processid?: any;
/**
* 子类别
*
* @returns {*}
* @memberof PhoneCall
*/
subcategory?: any;
/**
* RegardingObjectTypeCode
*
* @returns {*}
* @memberof PhoneCall
*/
regardingobjecttypecode?: any;
/**
* 更新时间
*
* @returns {*}
* @memberof PhoneCall
*/
updatedate?: any;
/**
* 负责人
*
* @returns {*}
* @memberof PhoneCall
*/
ownerid?: any;
/**
* 流程阶段
*
* @returns {*}
* @memberof PhoneCall
*/
stageid?: any;
/**
* SLAName
*
* @returns {*}
* @memberof PhoneCall
*/
slaname?: any;
/**
* 类别
*
* @returns {*}
* @memberof PhoneCall
*/
category?: any;
/**
* 预订
*
* @returns {*}
* @memberof PhoneCall
*/
subscriptionid?: any;
/**
* 截止日期
*
* @returns {*}
* @memberof PhoneCall
*/
scheduledend?: any;
/**
* 汇率
*
* @returns {*}
* @memberof PhoneCall
*/
exchangerate?: any;
/**
* 负责人
*
* @returns {*}
* @memberof PhoneCall
*/
owneridyominame?: any;
/**
* 活动类型
*
* @returns {*}
* @memberof PhoneCall
*/
activitytypecode?: any;
/**
* 开始日期
*
* @returns {*}
* @memberof PhoneCall
*/
scheduledstart?: any;
/**
* 时区规则版本号
*
* @returns {*}
* @memberof PhoneCall
*/
timezoneruleversionnumber?: any;
/**
* 由工作流创建
*
* @returns {*}
* @memberof PhoneCall
*/
workflowcreated?: any;
/**
* 是定期活动
*
* @returns {*}
* @memberof PhoneCall
*/
regularactivity?: any;
/**
* 被呼叫方
*
* @returns {*}
* @memberof PhoneCall
*/
to?: any;
/**
* 优先级
*
* @returns {*}
* @memberof PhoneCall
*/
prioritycode?: any;
/**
* 电话联络
*
* @returns {*}
* @memberof PhoneCall
*/
activityid?: any;
/**
* 附加参数
*
* @returns {*}
* @memberof PhoneCall
*/
activityadditionalparams?: any;
/**
* 计划持续时间
*
* @returns {*}
* @memberof PhoneCall
*/
scheduleddurationminutes?: any;
/**
* 已记帐
*
* @returns {*}
* @memberof PhoneCall
*/
billed?: any;
/**
* SLA
*
* @returns {*}
* @memberof PhoneCall
*/
slaid?: any;
/**
* 货币
*
* @returns {*}
* @memberof PhoneCall
*/
transactioncurrencyid?: any;
/**
* 服务
*
* @returns {*}
* @memberof PhoneCall
*/
serviceid?: any;
}
\ No newline at end of file
......@@ -4,6 +4,7 @@ import invoice_en_US from '@locale/lanres/entities/invoice/invoice_en_US';
import lead_en_US from '@locale/lanres/entities/lead/lead_en_US';
import incident_en_US from '@locale/lanres/entities/incident/incident_en_US';
import ibizlist_en_US from '@locale/lanres/entities/ibiz-list/ibiz-list_en_US';
import phonecall_en_US from '@locale/lanres/entities/phone-call/phone-call_en_US';
import salesliterature_en_US from '@locale/lanres/entities/sales-literature/sales-literature_en_US';
import activitypointer_en_US from '@locale/lanres/entities/activity-pointer/activity-pointer_en_US';
import quote_en_US from '@locale/lanres/entities/quote/quote_en_US';
......@@ -118,6 +119,7 @@ export default {
lead: lead_en_US,
incident: incident_en_US,
ibizlist: ibizlist_en_US,
phonecall: phonecall_en_US,
salesliterature: salesliterature_en_US,
activitypointer: activitypointer_en_US,
quote: quote_en_US,
......
......@@ -4,6 +4,7 @@ import invoice_zh_CN from '@locale/lanres/entities/invoice/invoice_zh_CN';
import lead_zh_CN from '@locale/lanres/entities/lead/lead_zh_CN';
import incident_zh_CN from '@locale/lanres/entities/incident/incident_zh_CN';
import ibizlist_zh_CN from '@locale/lanres/entities/ibiz-list/ibiz-list_zh_CN';
import phonecall_zh_CN from '@locale/lanres/entities/phone-call/phone-call_zh_CN';
import salesliterature_zh_CN from '@locale/lanres/entities/sales-literature/sales-literature_zh_CN';
import activitypointer_zh_CN from '@locale/lanres/entities/activity-pointer/activity-pointer_zh_CN';
import quote_zh_CN from '@locale/lanres/entities/quote/quote_zh_CN';
......@@ -118,6 +119,7 @@ export default {
lead: lead_zh_CN,
incident: incident_zh_CN,
ibizlist: ibizlist_zh_CN,
phonecall: phonecall_zh_CN,
salesliterature: salesliterature_zh_CN,
activitypointer: activitypointer_zh_CN,
quote: quote_zh_CN,
......
export default {
fields: {
utcconversiontimezonecode: 'UTC 转换时区代码',
traversedpath: '遍历的路径',
regardingobjectid: '关于',
importsequencenumber: '导入序列号',
updateman: '更新人',
overriddencreatedon: '创建记录的时间',
lastonholdtime: '上一暂候时间',
from: '呼叫方',
createdate: '建立时间',
phonenumber: '电话号码',
description: '说明',
subject: '主题',
sortdate: '排序日期',
actualend: '实际结束时间',
statuscode: '状态描述',
createman: '建立人',
directioncode: '方向',
actualstart: '实际开始时间',
statecode: '活动状态',
onholdtime: '暂候时间(分钟)',
leftvoicemail: '保留的语音邮件',
actualdurationminutes: '持续时间',
regardingobjectidyominame: 'RegardingObjectIdYomiName',
owneridtype: 'OwnerIdType',
versionnumber: '版本号',
processid: '流程',
subcategory: '子类别',
regardingobjecttypecode: 'RegardingObjectTypeCode',
updatedate: '更新时间',
ownerid: '负责人',
stageid: '流程阶段',
slaname: 'SLAName',
category: '类别',
subscriptionid: '预订',
scheduledend: '截止日期',
exchangerate: '汇率',
owneridyominame: '负责人',
activitytypecode: '活动类型',
scheduledstart: '开始日期',
timezoneruleversionnumber: '时区规则版本号',
workflowcreated: '由工作流创建',
regularactivity: '是定期活动',
to: '被呼叫方',
prioritycode: '优先级',
activityid: '电话联络',
activityadditionalparams: '附加参数',
scheduleddurationminutes: '计划持续时间',
billed: '已记帐',
slaid: 'SLA',
transactioncurrencyid: '货币',
serviceid: '服务',
},
};
\ No newline at end of file
export default {
fields: {
utcconversiontimezonecode: 'UTC 转换时区代码',
traversedpath: '遍历的路径',
regardingobjectid: '关于',
importsequencenumber: '导入序列号',
updateman: '更新人',
overriddencreatedon: '创建记录的时间',
lastonholdtime: '上一暂候时间',
from: '呼叫方',
createdate: '建立时间',
phonenumber: '电话号码',
description: '说明',
subject: '主题',
sortdate: '排序日期',
actualend: '实际结束时间',
statuscode: '状态描述',
createman: '建立人',
directioncode: '方向',
actualstart: '实际开始时间',
statecode: '活动状态',
onholdtime: '暂候时间(分钟)',
leftvoicemail: '保留的语音邮件',
actualdurationminutes: '持续时间',
regardingobjectidyominame: 'RegardingObjectIdYomiName',
owneridtype: 'OwnerIdType',
versionnumber: '版本号',
processid: '流程',
subcategory: '子类别',
regardingobjecttypecode: 'RegardingObjectTypeCode',
updatedate: '更新时间',
ownerid: '负责人',
stageid: '流程阶段',
slaname: 'SLAName',
category: '类别',
subscriptionid: '预订',
scheduledend: '截止日期',
exchangerate: '汇率',
owneridyominame: '负责人',
activitytypecode: '活动类型',
scheduledstart: '开始日期',
timezoneruleversionnumber: '时区规则版本号',
workflowcreated: '由工作流创建',
regularactivity: '是定期活动',
to: '被呼叫方',
prioritycode: '优先级',
activityid: '电话联络',
activityadditionalparams: '附加参数',
scheduleddurationminutes: '计划持续时间',
billed: '已记帐',
slaid: 'SLA',
transactioncurrencyid: '货币',
serviceid: '服务',
},
};
\ No newline at end of file
......@@ -13,6 +13,7 @@ import './entity/invoices/invoices';
import './entity/leads/leads';
import './entity/incidents/incidents';
import './entity/ibiz-lists/ibiz-lists';
import './entity/phone-calls/phone-calls';
import './entity/sales-literatures/sales-literatures';
import './entity/activity-pointers/activity-pointers';
import './entity/quotes/quotes';
......
......@@ -45,6 +45,7 @@ export class EntityServiceRegister {
this.allEntityService.set('lead', () => import('@/service/lead/lead-service'));
this.allEntityService.set('incident', () => import('@/service/incident/incident-service'));
this.allEntityService.set('ibizlist', () => import('@/service/ibiz-list/ibiz-list-service'));
this.allEntityService.set('phonecall', () => import('@/service/phone-call/phone-call-service'));
this.allEntityService.set('salesliterature', () => import('@/service/sales-literature/sales-literature-service'));
this.allEntityService.set('activitypointer', () => import('@/service/activity-pointer/activity-pointer-service'));
this.allEntityService.set('quote', () => import('@/service/quote/quote-service'));
......
import { Http,Util } from '@/utils';
import EntityService from '../entity-service';
/**
* 电话联络服务对象基类
*
* @export
* @class PhoneCallServiceBase
* @extends {EntityServie}
*/
export default class PhoneCallServiceBase extends EntityService {
/**
* Creates an instance of PhoneCallServiceBase.
*
* @param {*} [opts={}]
* @memberof PhoneCallServiceBase
*/
constructor(opts: any = {}) {
super(opts);
}
/**
* 初始化基础数据
*
* @memberof PhoneCallServiceBase
*/
public initBasicData(){
this.APPLYDEKEY ='phonecall';
this.APPDEKEY = 'activityid';
this.APPDENAME = 'phonecalls';
this.APPDETEXT = 'subject';
this.APPNAME = 'businesscentral';
this.SYSTEMNAME = 'ibizbusinesscentral';
}
// 实体接口
/**
* Select接口方法
*
* @param {*} [context={}]
* @param {*} [data={}]
* @param {boolean} [isloading]
* @returns {Promise<any>}
* @memberof PhoneCallServiceBase
*/
public async Select(context: any = {},data: any = {}, isloading?: boolean): Promise<any> {
return Http.getInstance().get(`/phonecalls/${context.phonecall}/select`,isloading);
}
/**
* Create接口方法
*
* @param {*} [context={}]
* @param {*} [data={}]
* @param {boolean} [isloading]
* @returns {Promise<any>}
* @memberof PhoneCallServiceBase
*/
public async Create(context: any = {},data: any = {}, isloading?: boolean): Promise<any> {
let masterData:any = {};
Object.assign(data,masterData);
if(!data.srffrontuf || data.srffrontuf !== "1"){
data[this.APPDEKEY] = null;
}
if(data.srffrontuf){
delete data.srffrontuf;
}
let tempContext:any = JSON.parse(JSON.stringify(context));
let res:any = await Http.getInstance().post(`/phonecalls`,data,isloading);
return res;
}
/**
* Get接口方法
*
* @param {*} [context={}]
* @param {*} [data={}]
* @param {boolean} [isloading]
* @returns {Promise<any>}
* @memberof PhoneCallServiceBase
*/
public async Get(context: any = {},data: any = {}, isloading?: boolean): Promise<any> {
let res:any = await Http.getInstance().get(`/phonecalls/${context.phonecall}`,isloading);
return res;
}
/**
* CheckKey接口方法
*
* @param {*} [context={}]
* @param {*} [data={}]
* @param {boolean} [isloading]
* @returns {Promise<any>}
* @memberof PhoneCallServiceBase
*/
public async CheckKey(context: any = {},data: any = {}, isloading?: boolean): Promise<any> {
return Http.getInstance().post(`/phonecalls/${context.phonecall}/checkkey`,data,isloading);
}
/**
* Update接口方法
*
* @param {*} [context={}]
* @param {*} [data={}]
* @param {boolean} [isloading]
* @returns {Promise<any>}
* @memberof PhoneCallServiceBase
*/
public async Update(context: any = {},data: any = {}, isloading?: boolean): Promise<any> {
let masterData:any = {};
Object.assign(data,masterData);
let res:any = await Http.getInstance().put(`/phonecalls/${context.phonecall}`,data,isloading);
return res;
}
/**
* Save接口方法
*
* @param {*} [context={}]
* @param {*} [data={}]
* @param {boolean} [isloading]
* @returns {Promise<any>}
* @memberof PhoneCallServiceBase
*/
public async Save(context: any = {},data: any = {}, isloading?: boolean): Promise<any> {
let masterData:any = {};
Object.assign(data,masterData);
let res:any = await Http.getInstance().post(`/phonecalls/${context.phonecall}/save`,data,isloading);
return res;
}
/**
* GetDraft接口方法
*
* @param {*} [context={}]
* @param {*} [data={}]
* @param {boolean} [isloading]
* @returns {Promise<any>}
* @memberof PhoneCallServiceBase
*/
public async GetDraft(context: any = {},data: any = {}, isloading?: boolean): Promise<any> {
let res:any = await Http.getInstance().get(`/phonecalls/getdraft`,isloading);
res.data.phonecall = data.phonecall;
return res;
}
/**
* Remove接口方法
*
* @param {*} [context={}]
* @param {*} [data={}]
* @param {boolean} [isloading]
* @returns {Promise<any>}
* @memberof PhoneCallServiceBase
*/
public async Remove(context: any = {},data: any = {}, isloading?: boolean): Promise<any> {
return Http.getInstance().delete(`/phonecalls/${context.phonecall}`,isloading);
}
/**
* FetchDefault接口方法
*
* @param {*} [context={}]
* @param {*} [data={}]
* @param {boolean} [isloading]
* @returns {Promise<any>}
* @memberof PhoneCallServiceBase
*/
public async FetchDefault(context: any = {},data: any = {}, isloading?: boolean): Promise<any> {
let tempData:any = JSON.parse(JSON.stringify(data));
return Http.getInstance().get(`/phonecalls/fetchdefault`,tempData,isloading);
}
/**
* FetchByAccount接口方法
*
* @param {*} [context={}]
* @param {*} [data={}]
* @param {boolean} [isloading]
* @returns {Promise<any>}
* @memberof PhoneCallServiceBase
*/
public async FetchByAccount(context: any = {},data: any = {}, isloading?: boolean): Promise<any> {
let tempData:any = JSON.parse(JSON.stringify(data));
return Http.getInstance().get(`/phonecalls/fetchbyaccount`,tempData,isloading);
}
}
\ No newline at end of file
import { Http,Util } from '@/utils';
import PhoneCallServiceBase from './phone-call-service-base';
/**
* 电话联络服务对象
*
* @export
* @class PhoneCallService
* @extends {PhoneCallServiceBase}
*/
export default class PhoneCallService extends PhoneCallServiceBase {
/**
* Creates an instance of PhoneCallService.
*
* @param {*} [opts={}]
* @memberof PhoneCallService
*/
constructor(opts: any = {}) {
super(opts);
}
}
\ No newline at end of file
import { Environment } from '@/environments/environment';
import { UIActionTool,Util } from '@/utils';
import UIService from '../ui-service';
import { Subject } from 'rxjs';
import PhoneCallService from '@/service/phone-call/phone-call-service';
/**
* 电话联络UI服务对象基类
*
* @export
* @class PhoneCallUIServiceBase
*/
export default class PhoneCallUIServiceBase extends UIService {
/**
* 是否支持工作流
*
* @memberof PhoneCallUIServiceBase
*/
public isEnableWorkflow:boolean = false;
/**
* 当前UI服务对应的数据服务对象
*
* @memberof PhoneCallUIServiceBase
*/
public dataService:PhoneCallService = new PhoneCallService();
/**
* 所有关联视图
*
* @memberof PhoneCallUIServiceBase
*/
public allViewMap: Map<string, Object> = new Map();
/**
* 状态值
*
* @memberof PhoneCallUIServiceBase
*/
public stateValue: number = 0;
/**
* 状态属性
*
* @memberof PhoneCallUIServiceBase
*/
public stateField: string = "";
/**
* 主状态属性集合
*
* @memberof PhoneCallUIServiceBase
*/
public mainStateFields:Array<any> = [];
/**
* 主状态集合Map
*
* @memberof PhoneCallUIServiceBase
*/
public allDeMainStateMap:Map<string,string> = new Map();
/**
* Creates an instance of PhoneCallUIServiceBase.
*
* @param {*} [opts={}]
* @memberof PhoneCallUIServiceBase
*/
constructor(opts: any = {}) {
super(opts);
this.initViewMap();
this.initDeMainStateMap();
}
/**
* 初始化视图Map
*
* @memberof PhoneCallUIServiceBase
*/
public initViewMap(){
}
/**
* 初始化主状态集合
*
* @memberof PhoneCallUIServiceBase
*/
public initDeMainStateMap(){
}
/**
* 获取指定数据的重定向页面
*
* @param srfkey 数据主键
* @param isEnableWorkflow 重定向视图是否需要处理流程中的数据
* @memberof PhoneCallUIServiceBase
*/
public async getRDAppView(srfkey:string,isEnableWorkflow:boolean){
this.isEnableWorkflow = isEnableWorkflow;
// 进行数据查询
let result:any = await this.dataService.Get({phonecall:srfkey});
const curData:any = result.data;
//判断当前数据模式,默认为true,todo
const iRealDEModel:boolean = true;
let bDataInWF:boolean = false;
let bWFMode:any = false;
// 计算数据模式
if (this.isEnableWorkflow) {
bDataInWF = await this.dataService.testDataInWF({stateValue:this.stateValue,stateField:this.stateField},curData);
if (bDataInWF) {
bDataInWF = true;
bWFMode = await this.dataService.testUserExistWorklist(null,curData);
}
}
let strPDTViewParam:string = await this.getDESDDEViewPDTParam(curData, bDataInWF, bWFMode);
//若不是当前数据模式,处理strPDTViewParam,todo
//查找视图
//返回视图
return this.allViewMap.get(strPDTViewParam);
}
/**
* 获取实际的数据类型
*
* @memberof PhoneCallUIServiceBase
*/
public getRealDEType(entity:any){
}
/**
* 获取实体单数据实体视图预定义参数
*
* @param curData 当前数据
* @param bDataInWF 是否有数据在工作流中
* @param bWFMode 是否工作流模式
* @memberof PhoneCallUIServiceBase
*/
public async getDESDDEViewPDTParam(curData:any, bDataInWF:boolean, bWFMode:boolean){
let strPDTParam:string = '';
if (bDataInWF) {
// 判断数据是否在流程中
}
//多表单,todo
const isEnableMultiForm:boolean = false;
const multiFormDEField:string|null =null;
if (isEnableMultiForm && multiFormDEField) {
const objFormValue:string = curData[multiFormDEField];
if(!Environment.isAppMode){
return 'MOBEDITVIEW'+objFormValue;
}
return 'EDITVIEW'+objFormValue;
}
if(!Environment.isAppMode){
if(this.getDEMainStateTag(curData)){
return `MOBEDITVIEW:MSTAG:${ await this.getDEMainStateTag(curData)}`;
}
return 'MOBEDITVIEW:';
}
if(this.getDEMainStateTag(curData)){
return `EDITVIEW:MSTAG:${ await this.getDEMainStateTag(curData)}`;
}
return 'EDITVIEW:';
}
/**
* 获取数据对象的主状态标识
*
* @param curData 当前数据
* @memberof PhoneCallUIServiceBase
*/
public async getDEMainStateTag(curData:any){
if(this.mainStateFields.length === 0) return null;
this.mainStateFields.forEach((singleMainField:any) =>{
if(!(singleMainField in curData)){
console.error(`当前数据对象不包含属性singleMainField,可能会发生错误`);
}
})
let strTag:String = "";
for (let i = 0; i <= 1; i++) {
let strTag:string = (curData[this.mainStateFields[0]])?(i == 0) ? curData[this.mainStateFields[0]] : "":"";
if (this.mainStateFields.length >= 2) {
for (let j = 0; j <= 1; j++) {
let strTag2:string = (curData[this.mainStateFields[1]])?`${strTag}__${(j == 0) ? curData[this.mainStateFields[1]] : ""}`:strTag;
if (this.mainStateFields.length >= 3) {
for (let k = 0; k <= 1; k++) {
let strTag3:string = (curData[this.mainStateFields[2]])?`${strTag2}__${(k == 0) ? curData[this.mainStateFields[2]] : ""}`:strTag2;
// 判断是否存在
return this.allDeMainStateMap.get(strTag3);
}
}else{
return this.allDeMainStateMap.get(strTag2);
}
}
}else{
return this.allDeMainStateMap.get(strTag);
}
}
return null;
}
}
\ No newline at end of file
import PhoneCallUIServiceBase from './phone-call-ui-service-base';
/**
* 电话联络UI服务对象
*
* @export
* @class PhoneCallUIService
*/
export default class PhoneCallUIService extends PhoneCallUIServiceBase {
/**
* Creates an instance of PhoneCallUIService.
*
* @param {*} [opts={}]
* @memberof PhoneCallUIService
*/
constructor(opts: any = {}) {
super(opts);
}
}
\ No newline at end of file
......@@ -45,6 +45,7 @@ export class UIServiceRegister {
this.allUIService.set('lead', () => import('@/uiservice/lead/lead-ui-service'));
this.allUIService.set('incident', () => import('@/uiservice/incident/incident-ui-service'));
this.allUIService.set('ibizlist', () => import('@/uiservice/ibiz-list/ibiz-list-ui-service'));
this.allUIService.set('phonecall', () => import('@/uiservice/phone-call/phone-call-ui-service'));
this.allUIService.set('salesliterature', () => import('@/uiservice/sales-literature/sales-literature-ui-service'));
this.allUIService.set('activitypointer', () => import('@/uiservice/activity-pointer/activity-pointer-ui-service'));
this.allUIService.set('quote', () => import('@/uiservice/quote/quote-ui-service'));
......
......@@ -9,6 +9,6 @@ CMD echo "The application will start in ${IBIZ_SLEEP}s..." && \
sleep ${IBIZ_SLEEP} && \
java ${JAVA_OPTS} -Djava.security.egd=file:/dev/./urandom -jar /businesscentral-app-businesscentral.jar
EXPOSE 10320
EXPOSE 8080
ADD businesscentral-app-businesscentral.jar /businesscentral-app-businesscentral.jar
......@@ -3,23 +3,9 @@ services:
businesscentral-app-businesscentral:
image: registry.cn-shanghai.aliyuncs.com/ibizsys/businesscentral-app-businesscentral:latest
ports:
- "10320:10320"
- "8080:8080"
networks:
- agent_network
environment:
- SPRING_CLOUD_NACOS_DISCOVERY_IP=172.16.240.110
- SERVER_PORT=10320
- SPRING_CLOUD_NACOS_DISCOVERY_SERVER-ADDR=172.16.240.110:8848
- SPRING_REDIS_HOST=172.16.100.243
- SPRING_REDIS_PORT=6379
- SPRING_REDIS_DATABASE=0
- SPRING_DATASOURCE_USERNAME=a_LAB01_e85d8801c
- SPRING_DATASOURCE_PASSWORD=b1@@@772
- SPRING_DATASOURCE_URL=jdbc:mysql://172.16.186.185:3306/a_LAB01_e85d8801c?autoReconnect=true&useUnicode=true&characterEncoding=UTF-8&useOldAliasMetadataBehavior=true
- SPRING_DATASOURCE_DRIVER-CLASS-NAME=com.mysql.jdbc.Driver
- SPRING_DATASOURCE_DEFAULTSCHEMA=a_LAB01_e85d8801c
- CAS=https://passport.ibizlab.cn
- NACOS=172.16.240.110:8848
deploy:
resources:
limits:
......
......@@ -27,6 +27,10 @@ zuul:
path: /ibizlists/**
serviceId: ibizbusinesscentral-centralapi
stripPrefix: false
phonecall:
path: /phonecalls/**
serviceId: ibizbusinesscentral-centralapi
stripPrefix: false
salesliterature:
path: /salesliteratures/**
serviceId: ibizbusinesscentral-centralapi
......
......@@ -306,7 +306,7 @@ public class PhoneCall extends EntityMP implements Serializable {
@JsonProperty("exchangerate")
private BigDecimal exchangerate;
/**
* OwnerIdYomiName
* 负责人
*/
@TableField(value = "owneridyominame")
@JSONField(name = "owneridyominame")
......@@ -759,7 +759,7 @@ public class PhoneCall extends EntityMP implements Serializable {
}
/**
* 设置 [OwnerIdYomiName]
* 设置 [负责人]
*/
public void setOwneridyominame(String owneridyominame){
this.owneridyominame = owneridyominame ;
......
......@@ -20,6 +20,7 @@ import com.alibaba.fastjson.JSONObject;
public interface PhoneCallMapper extends BaseMapper<PhoneCall>{
Page<PhoneCall> searchDefault(IPage page, @Param("srf") PhoneCallSearchContext context, @Param("ew") Wrapper<PhoneCall> wrapper) ;
Page<PhoneCall> searchByAccount(IPage page, @Param("srf") PhoneCallSearchContext context, @Param("ew") Wrapper<PhoneCall> wrapper) ;
@Override
PhoneCall selectById(Serializable id);
@Override
......
......@@ -37,6 +37,7 @@ public interface IPhoneCallService extends IService<PhoneCall>{
boolean remove(String key) ;
void removeBatch(Collection<String> idList) ;
Page<PhoneCall> searchDefault(PhoneCallSearchContext context) ;
Page<PhoneCall> searchByAccount(PhoneCallSearchContext context) ;
List<PhoneCall> selectByServiceid(String serviceid) ;
void removeByServiceid(String serviceid) ;
List<PhoneCall> selectBySlaid(String slaid) ;
......
......@@ -190,6 +190,15 @@ public class PhoneCallServiceImpl extends ServiceImpl<PhoneCallMapper, PhoneCall
return new PageImpl<PhoneCall>(pages.getRecords(), context.getPageable(), pages.getTotal());
}
/**
* 查询集合 ByAccount
*/
@Override
public Page<PhoneCall> searchByAccount(PhoneCallSearchContext context) {
com.baomidou.mybatisplus.extension.plugins.pagination.Page<PhoneCall> pages=baseMapper.searchByAccount(context.getPages(),context,context.getSelectCond());
return new PageImpl<PhoneCall>(pages.getRecords(), context.getPageable(), pages.getTotal());
}
......
......@@ -55,6 +55,21 @@
<if test="ew!=null and ew.sqlSegment!=null and ew.emptyOfWhere">${ew.sqlSegment}</if>
</select>
<!--数据集合[ByAccount]-->
<select id="searchByAccount" parameterType="cn.ibizlab.businesscentral.core.base.filter.PhoneCallSearchContext" resultMap="PhoneCallResultMap">
select t1.* from (
<include refid="ByAccount" />
)t1
<where><if test="ew!=null and ew.sqlSegment!=null and !ew.emptyOfWhere">${ew.sqlSegment}</if></where>
<if test="ew!=null and ew.sqlSegment!=null and ew.emptyOfWhere">${ew.sqlSegment}</if>
</select>
<!--数据查询[ByAccount]-->
<sql id="ByAccount" databaseId="mysql">
<![CDATA[ SELECT t1.`ACTIVITYID`, t1.`ACTIVITYTYPECODE`, t1.`ACTUALDURATIONMINUTES`, t1.`ACTUALEND`, t1.`ACTUALSTART`, t1.`BILLED`, t1.`CATEGORY`, t1.`CREATEDATE`, t1.`CREATEMAN`, t1.`DESCRIPTION`, t1.`DIRECTIONCODE`, t1.`EXCHANGERATE`, t1.`IMPORTSEQUENCENUMBER`, t1.`LASTONHOLDTIME`, t1.`LEFTVOICEMAIL`, t1.`ONHOLDTIME`, t1.`OVERRIDDENCREATEDON`, t1.`OWNERID`, t1.`OWNERIDTYPE`, t1.`OWNERIDYOMINAME`, t1.`PHONENUMBER`, t1.`PRIORITYCODE`, t1.`PROCESSID`, t1.`REGARDINGOBJECTID`, t1.`REGARDINGOBJECTIDYOMINAME`, t1.`REGARDINGOBJECTTYPECODE`, t1.`REGULARACTIVITY`, t1.`SCHEDULEDDURATIONMINUTES`, t1.`SCHEDULEDEND`, t1.`SCHEDULEDSTART`, t1.`SERVICEID`, t1.`SLAID`, t1.`SLANAME`, t1.`SORTDATE`, t1.`STAGEID`, t1.`STATECODE`, t1.`STATUSCODE`, t1.`SUBCATEGORY`, t1.`SUBJECT`, t1.`SUBSCRIPTIONID`, t1.`TIMEZONERULEVERSIONNUMBER`, t1.`TRANSACTIONCURRENCYID`, t1.`TRAVERSEDPATH`, t1.`UPDATEDATE`, t1.`UPDATEMAN`, t1.`UTCCONVERSIONTIMEZONECODE`, t1.`VERSIONNUMBER`, t1.`WORKFLOWCREATED` FROM `PHONECALL` t1
WHERE ( t1.`REGARDINGOBJECTID` = #{srf.datacontext.srfparentkey} )
]]>
</sql>
<!--数据查询[Default]-->
<sql id="Default" databaseId="mysql">
<![CDATA[ SELECT t1.`ACTIVITYID`, t1.`ACTIVITYTYPECODE`, t1.`ACTUALDURATIONMINUTES`, t1.`ACTUALEND`, t1.`ACTUALSTART`, t1.`BILLED`, t1.`CATEGORY`, t1.`CREATEDATE`, t1.`CREATEMAN`, t1.`DESCRIPTION`, t1.`DIRECTIONCODE`, t1.`EXCHANGERATE`, t1.`IMPORTSEQUENCENUMBER`, t1.`LASTONHOLDTIME`, t1.`LEFTVOICEMAIL`, t1.`ONHOLDTIME`, t1.`OVERRIDDENCREATEDON`, t1.`OWNERID`, t1.`OWNERIDTYPE`, t1.`OWNERIDYOMINAME`, t1.`PHONENUMBER`, t1.`PRIORITYCODE`, t1.`PROCESSID`, t1.`REGARDINGOBJECTID`, t1.`REGARDINGOBJECTIDYOMINAME`, t1.`REGARDINGOBJECTTYPECODE`, t1.`REGULARACTIVITY`, t1.`SCHEDULEDDURATIONMINUTES`, t1.`SCHEDULEDEND`, t1.`SCHEDULEDSTART`, t1.`SERVICEID`, t1.`SLAID`, t1.`SLANAME`, t1.`SORTDATE`, t1.`STAGEID`, t1.`STATECODE`, t1.`STATUSCODE`, t1.`SUBCATEGORY`, t1.`SUBJECT`, t1.`SUBSCRIPTIONID`, t1.`TIMEZONERULEVERSIONNUMBER`, t1.`TRANSACTIONCURRENCYID`, t1.`TRAVERSEDPATH`, t1.`UPDATEDATE`, t1.`UPDATEMAN`, t1.`UTCCONVERSIONTIMEZONECODE`, t1.`VERSIONNUMBER`, t1.`WORKFLOWCREATED` FROM `PHONECALL` t1
......
......@@ -52,6 +52,14 @@
"datascope":[{"id":"all","name":"全部数据"}, {"id":"createman","name":"创建人"}]
}
, {
"dename":"PhoneCall",
"delogicname":"电话联络",
"sysmoudle":{"id":"BASE","name":"Base"},
"dedataset":[{"id":"Default" , "name":"DEFAULT"},{"id":"ByAccount" , "name":"ByAccount"}],
"deaction":[{"id":"Create" , "name":"Create" , "type":"BUILTIN" },{"id":"Get" , "name":"Get" , "type":"BUILTIN" },{"id":"CheckKey" , "name":"CheckKey" , "type":"BUILTIN" },{"id":"Update" , "name":"Update" , "type":"BUILTIN" },{"id":"Save" , "name":"Save" , "type":"BUILTIN" },{"id":"GetDraft" , "name":"GetDraft" , "type":"BUILTIN" },{"id":"Remove" , "name":"Remove" , "type":"BUILTIN" }],
"datascope":[{"id":"all","name":"全部数据"}, {"id":"createman","name":"创建人"}]
}
, {
"dename":"SalesLiterature",
"delogicname":"销售宣传资料",
"sysmoudle":{"id":"SALES","name":"Sales"},
......
package cn.ibizlab.businesscentral.centralapi.mapping;
import org.mapstruct.*;
import cn.ibizlab.businesscentral.core.base.domain.PhoneCall;
import cn.ibizlab.businesscentral.centralapi.dto.PhoneCallDTO;
import cn.ibizlab.businesscentral.util.domain.MappingBase;
import org.mapstruct.factory.Mappers;
@Mapper(componentModel = "spring", uses = {},
nullValuePropertyMappingStrategy = NullValuePropertyMappingStrategy.IGNORE,
nullValueCheckStrategy = NullValueCheckStrategy.ALWAYS)
public interface PhoneCallMapping extends MappingBase<PhoneCallDTO, PhoneCall> {
}
......@@ -37,11 +37,6 @@
git clone -b master $para2 ibizbusinesscentral/
export NODE_OPTIONS=--max-old-space-size=4096
cd ibizbusinesscentral/
mvn clean package -Pbusinesscentral
cd businesscentral-app/businesscentral-app-businesscentral
mvn -Pbusinesscentral docker:build
mvn -Pbusinesscentral docker:push
docker -H $para1 stack deploy --compose-file=src/main/docker/businesscentral-app-businesscentral.yaml iBizEE --with-registry-auth
</command>
</hudson.tasks.Shell>
</builders>
......
Markdown 格式
0% or
您添加了 0 到此讨论。请谨慎行事。
先完成此消息的编辑!
想要评论请 注册