GVKun编程网logo

多线程之NSInvocationOperation(多线程之间如何进行通信)

15

本文将为您提供关于多线程之NSInvocationOperation的详细介绍,我们还将为您解释多线程之间如何进行通信的相关知识,同时,我们还将为您提供关于Android’InvocationTarg

本文将为您提供关于多线程之NSInvocationOperation的详细介绍,我们还将为您解释多线程之间如何进行通信的相关知识,同时,我们还将为您提供关于Android’InvocationTargetException’和’UnsupportedOperationException’、ims.core.vo.PatientDiagnosisAtConsultationVoCollection的实例源码、ims.core.vo.PatientSurgicalOperationVoCollection的实例源码、ims.ocrr.vo.InvestigationOcsQuestionsVoCollection的实例源码的实用信息。

本文目录一览:

多线程之NSInvocationOperation(多线程之间如何进行通信)

多线程之NSInvocationOperation(多线程之间如何进行通信)

http://www.1000phone.net/forum.php?mod=viewthread&tid=8639

多线程编程是防止主线程堵塞,增加运行效率等等的最佳方法。而原始的多线程方法存在很多的毛病,包括线程锁死等。在Cocoa中,Apple提供了NSOperation这个类,提供了一个优秀的多线程编程方法。

本次介绍NSOperation的子集,简易方法的NSInvocationoperation:

c-sharp

  1. @implementation MyCustomClass  
  2.    
  3. - (void)launchTaskWithData:(id)data  
  4. {  
  5.     //创建一个NSInvocationoperation对象,并初始化到方法  
  6.     //在这里,selector参数后的值是你想在另外一个线程中运行的方法(函数,Method)  
  7.     //在这里,object后的值是想传递给前面方法的数据  
  8.     NSInvocationoperation* theOp = [[NSInvocationoperation alloc] initWithTarget:self  
  9.                     selector:@selector(myTaskMethod:) object:data];  
  10.     // 下面将我们建立的操作“Operation”加入到本地程序的共享队列中(加入后方法就会立刻被执行)  
  11.     // 更多的时候是由我们自己建立“操作”队列  
  12.     [[MyAppDelegate sharedOperationQueue] addOperation:theOp];  
  13. }  
  14. // 这个是真正运行在另外一个线程的“方法”  
  15. - (void)myTaskMethod:(id)data  
  16.     // Perform the task.  
  17. @end  
复制代码


一个NSOperationQueue 操作队列,就相当于一个线程管理器,而非一个线程。因为你可以设置这个线程管理器内可以并行运行的的线程数量等等。下面是建立并初始化一个操作队列:

  1. @interface MyViewController : UIViewController {  
  2.     NSOperationQueue *operationQueue;  
  3.     //在头文件中声明该队列  
  4. @end  
  5. @implementation MyViewController  
  6. - (id)init  
  7.     self = [super init];  
  8.     if (self) {  
  9.         operationQueue = [[NSOperationQueue alloc] init]; //初始化操作队列  
  10.         [operationQueue setMaxConcurrentOperationCount:1];  
  11.         //在这里限定了该队列只同时运行一个线程  
  12.         //这个队列已经可以使用了  
  13.     }  
  14.     return self;  
  15. - (void)dealloc  
  16.     [operationQueue release];  
  17.     //正如Alan经常说的,我们是程序的好公民,需要释放内存!  
  18.     [super dealloc];  
  19. 简单介绍之后,其实可以发现这种方法是非常简单的。很多的时候我们使用多线程仅仅是为了防止主线程堵塞,而NSInvocationoperation就是最简单的多线程编程,在iPhone编程中是经常被用到的。

总结

以上是小编为你收集整理的多线程之NSInvocationOperation全部内容。

如果觉得小编网站内容还不错,欢迎将小编网站推荐给好友。

Android’InvocationTargetException’和’UnsupportedOperationException’

Android’InvocationTargetException’和’UnsupportedOperationException’

我在OPPO X905和OPPO X907上遇到了问题,两者都是 Android 4.0.3(API等级15),我没有使用任何更高级别的API,我在Google和SO上搜索过,都与我的问题不同,下面是我的xml文件和崩溃日志,在此先感谢.
xml文件:(分隔符的边距最初是7.5dp,这可能是问题吗?)

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:id="@+id/item_full"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:background="#eff0f7"
    android:baselineAligned="false"
    android:orientation="vertical" >
    <RelativeLayout
        android:id="@+id/item_first_half"
        android:layout_width="match_parent"
        android:layout_height="36dp"
        android:orientation="vertical" >
        <View
            android:id="@+id/first_path"
            android:layout_width="4dp"
            android:layout_height="4dp"
            android:layout_marginLeft="40dp"
            android:layout_marginStart="40dp"
            android:background="@drawable/selector_car_action_path" />
        <ImageView
            android:id="@+id/im_car_direction_icon"
            android:layout_width="28dp"
            android:layout_height="28dp"
            android:layout_gravity="top"
            android:layout_marginLeft="28dp"
            android:layout_marginStart="28dp"
            android:layout_marginTop="4dp"
            android:background="@drawable/selector_car_action_background"
            android:padding="2dp"
            android:src="@drawable/selector_navi_icon_63" />
        <View
            android:id="@+id/second_path"
            android:layout_width="4dp"
            android:layout_height="4dp"
            android:layout_below="@id/im_car_direction_icon"
            android:layout_marginLeft="40dp"
            android:layout_marginStart="40dp"
            android:background="@drawable/selector_car_action_path" />
        <TextView
            android:id="@+id/tv_direction"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:layout_centerVertical="true"
            android:layout_marginEnd="15dp"
            android:layout_marginLeft="68dp"
            android:layout_marginRight="15dp"
            android:layout_marginStart="68dp"
            android:singleLine="true"
            android:text=""
            android:textColor="@drawable/selector_car_route_turn_text"
            android:textSize="16sp" />
    </RelativeLayout>
    <RelativeLayout
        android:id="@+id/item_second_half"
        android:layout_width="match_parent"
        android:layout_height="32dp" >
        <View
            android:id="@+id/third_path"
            android:layout_width="4dp"
            android:layout_height="match_parent"
            android:layout_marginLeft="40dp"
            android:layout_marginStart="40dp"
            android:background="@drawable/selector_car_action_path" />
        <TextView
            android:id="@+id/tv_road_name"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_marginLeft="68dp"
            android:layout_marginStart="68dp"
            android:layout_marginTop="4dp"
            android:singleLine="true"
            android:text=""
            android:textColor="@drawable/selector_car_route_desc"
            android:textSize="16sp" />
        <TextView
            android:id="@+id/divider_for_road_and_distance"
            android:layout_width="wrap_content"
            android:layout_height="match_parent"
            android:layout_marginEnd="7dp"
            android:layout_marginLeft="7dp"
            android:layout_marginRight="7dp"
            android:layout_marginStart="7dp"
            android:layout_marginTop="4dp"
            android:layout_toEndOf="@id/tv_road_name"
            android:layout_toRightOf="@id/tv_road_name"
            android:singleLine="true"
            android:text="|"
            android:textColor="@drawable/selector_car_route_desc"
            android:textSize="16sp" />
        <TextView
            android:id="@+id/tv_ride_distance"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_marginEnd="15dp"
            android:layout_marginRight="15dp"
            android:layout_marginTop="4dp"
            android:layout_toEndOf="@id/divider_for_road_and_distance"
            android:layout_toRightOf="@id/divider_for_road_and_distance"
            android:singleLine="true"
            android:text=""
            android:textColor="@drawable/selector_car_route_desc"
            android:textSize="16sp" />
        <View
            android:layout_width="match_parent"
            android:layout_height="1px"
            android:layout_alignParentBottom="true"
            android:layout_marginEnd="15dp"
            android:layout_marginLeft="68dp"
            android:layout_marginRight="15dp"
            android:layout_marginStart="68dp"
            android:background="#dee1f0" />
    </RelativeLayout>
</LinearLayout>

drawable / selector_car_route_desc文件是

<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">

    <item android:state_selected="true" android:color="@color/color_999999"/>
    <item android:state_selected="false" android:color="@color/color_333333"/>

</selector>

崩溃日志:

android.view.InflateException: Binary XML file line #106: Error inflating class <unkNown>
android.view.LayoutInflater.createView(LayoutInflater.java:606)
com.android.internal.policy.impl.PhoneLayoutInflater.onCreateView(PhoneLayoutInflater.java:56)
android.view.LayoutInflater.onCreateView(LayoutInflater.java:653)
android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:678)
android.view.LayoutInflater.rInflate(LayoutInflater.java:739)
android.view.LayoutInflater.rInflate(LayoutInflater.java:742)
android.view.LayoutInflater.inflate(LayoutInflater.java:489)
android.view.LayoutInflater.inflate(LayoutInflater.java:396)
android.view.LayoutInflater.inflate(LayoutInflater.java:352)
com.tencent.map.ama.route.ui.view.e.<init>(CarRouteShowItem.java:78)
com.tencent.map.ama.route.ui.view.f.a(CarRouteShowView.java:100)
com.tencent.map.ama.route.ui.view.d.a(CarRouteDetailView.java:37)
com.tencent.map.ama.route.ui.MapStateCarRoute.e(MapStateCarRoute.java:418)
com.tencent.map.ama.route.ui.MapStateCarRoute$1.run(MapStateCarRoute.java:255)
android.os.Handler.handleCallback(Handler.java:605)
android.os.Handler.dispatchMessage(Handler.java:92)
android.os.Looper.loop(Looper.java:137)
android.app.ActivityThread.main(ActivityThread.java:4476)
java.lang.reflect.Method.invokeNative(Native Method)
java.lang.reflect.Method.invoke(Method.java:511)
com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:808)
com.android.internal.os.ZygoteInit.main(ZygoteInit.java:575)
dalvik.system.NativeStart.main(Native Method)
cause by:
java.lang.reflect.InvocationTargetException: null
java.lang.reflect.Constructor.constructNative(Native Method)
java.lang.reflect.Constructor.newInstance(Constructor.java:417)
android.view.LayoutInflater.createView(LayoutInflater.java:586)
com.android.internal.policy.impl.PhoneLayoutInflater.onCreateView(PhoneLayoutInflater.java:56)
android.view.LayoutInflater.onCreateView(LayoutInflater.java:653)
android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:678)
android.view.LayoutInflater.rInflate(LayoutInflater.java:739)
android.view.LayoutInflater.rInflate(LayoutInflater.java:742)
android.view.LayoutInflater.inflate(LayoutInflater.java:489)
android.view.LayoutInflater.inflate(LayoutInflater.java:396)
android.view.LayoutInflater.inflate(LayoutInflater.java:352)
com.tencent.map.ama.route.ui.view.e.<init>(CarRouteShowItem.java:78)
com.tencent.map.ama.route.ui.view.f.a(CarRouteShowView.java:100)
com.tencent.map.ama.route.ui.view.d.a(CarRouteDetailView.java:37)
com.tencent.map.ama.route.ui.MapStateCarRoute.e(MapStateCarRoute.java:418)
com.tencent.map.ama.route.ui.MapStateCarRoute$1.run(MapStateCarRoute.java:255)
android.os.Handler.handleCallback(Handler.java:605)
android.os.Handler.dispatchMessage(Handler.java:92)
android.os.Looper.loop(Looper.java:137)
android.app.ActivityThread.main(ActivityThread.java:4476)
java.lang.reflect.Method.invokeNative(Native Method)
java.lang.reflect.Method.invoke(Method.java:511)
com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:808)
com.android.internal.os.ZygoteInit.main(ZygoteInit.java:575)
dalvik.system.NativeStart.main(Native Method)
cause by:
java.lang.UnsupportedOperationException: Can''t convert to dimension: type=0x12
android.content.res.TypedArray.getDimensionPixelSize(TypedArray.java:463)
android.view.View.<init>(View.java:2849)
android.widget.TextView.<init>(TextView.java:499)
android.widget.TextView.<init>(TextView.java:492)
java.lang.reflect.Constructor.constructNative(Native Method)
java.lang.reflect.Constructor.newInstance(Constructor.java:417)
android.view.LayoutInflater.createView(LayoutInflater.java:586)
com.android.internal.policy.impl.PhoneLayoutInflater.onCreateView(PhoneLayoutInflater.java:56)
android.view.LayoutInflater.onCreateView(LayoutInflater.java:653)
android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:678)
android.view.LayoutInflater.rInflate(LayoutInflater.java:739)
android.view.LayoutInflater.rInflate(LayoutInflater.java:742)
android.view.LayoutInflater.inflate(LayoutInflater.java:489)
android.view.LayoutInflater.inflate(LayoutInflater.java:396)
android.view.LayoutInflater.inflate(LayoutInflater.java:352)
com.tencent.map.ama.route.ui.view.e.<init>(CarRouteShowItem.java:78)
com.tencent.map.ama.route.ui.view.f.a(CarRouteShowView.java:100)
com.tencent.map.ama.route.ui.view.d.a(CarRouteDetailView.java:37)
com.tencent.map.ama.route.ui.MapStateCarRoute.e(MapStateCarRoute.java:418)
com.tencent.map.ama.route.ui.MapStateCarRoute$1.run(MapStateCarRoute.java:255)
android.os.Handler.handleCallback(Handler.java:605)
android.os.Handler.dispatchMessage(Handler.java:92)
android.os.Looper.loop(Looper.java:137)
android.app.ActivityThread.main(ActivityThread.java:4476)
java.lang.reflect.Method.invokeNative(Native Method)
java.lang.reflect.Method.invoke(Method.java:511)
com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:808)
com.android.internal.os.ZygoteInit.main(ZygoteInit.java:575)
dalvik.system.NativeStart.main(Native Method)

CarRouteShowItem.java:78的代码是这样的:

View mView = LayoutInflater.from(mContext).inflate(R.layout.car_route_detail_item,null);

CarRouteShowItem不是View的子代,其代码如下:

public class CarRouteShowItem {

    private Context mContext;

    private View mView;

    public CarRouteShowItem(Context context) {
        mContext = context;

        // mView is used by caller 
        mView = LayoutInflater.from(mContext).inflate(R.layout.car_route_detail_item,null);

        // some view finds 
    }

        // some other methods related with specific logic
}

图形布局可以在Eclipse中从API级别8预览到API级别23,但是当我在API级别15的Android Studio中预览时,它会显示错误消息:无法解析资源@style / Widget.TextView,其他API级别没问题,但我没有使用TextView的样式.

解决方法

你需要的只是一个额外的眼睛:-)

enter image description here

android:layout_height="1px"

希望你现在能看到.第二个RelativeLayout中的最后一个子项,其id为item_second_half,类型为< View,将其更改为

android:layout_height="1dp"

让我尽快回顾一下

ims.core.vo.PatientDiagnosisAtConsultationVoCollection的实例源码

ims.core.vo.PatientDiagnosisAtConsultationVoCollection的实例源码

项目:AvoinApotti    文件:Logic.java   
private boolean saveDiagnosis() 
{
    PatientDiagnosisAtConsultationVoCollection diagnosisList = form.getGlobalContext().Core.getPatientDiagnosisAtConsultationList();

    String[] errors = diagnosisList.validate();
    if(errors != null && errors.length >0)
    {
        engine.showErrors(errors);
        return false;
    }

    try 
    {
        form.getGlobalContext().Core.setPatientDiagnosisAtConsultationList(domain.saveDiagnosis(diagnosisList));
    } 
    catch (StaleObjectException e) 
    {
        e.printstacktrace();
        engine.showMessage(ConfigFlag.UI.STALE_OBJECT_MESSAGE.getValue());
        form.getGlobalContext().Core.setPatientDiagnosisAtConsultationList(domain.listPatientDiagnosis(form.getLocalContext().getCareContext()));
        populatePatientDiagnosisGrid(form.getGlobalContext().Core.getPatientDiagnosisAtConsultationList());
        return false;
    }

    return true;
}
项目:AvoinApotti    文件:InterventionsDiagnosisInvestigationsCcImpl.java   
public PatientDiagnosisAtConsultationVoCollection saveDiagnosis(PatientDiagnosisAtConsultationVoCollection diagnosis)   throws StaleObjectException 
{
    if(diagnosis == null)
        throw new CodingRuntimeException("Cannot save a null PatientDiagnosisAtConsultationVoCollection.");

    if(!diagnosis.isValidated())
        throw new CodingRuntimeException("PatientDiagnosisAtConsultationVoCollection is not validated.");

    DomainFactory factory = getDomainFactory();
    PatientDiagnosisAtConsultationVoCollection coll = new PatientDiagnosisAtConsultationVoCollection();

    for(PatientDiagnosisAtConsultationVo diagnose : diagnosis)
    {
        if(diagnose == null)
            continue;

        PatientDiagnosis doDiagnose = PatientDiagnosisAtConsultationVoAssembler.extractPatientDiagnosis(factory,diagnose);

        factory.save(doDiagnose);
        coll.add(PatientDiagnosisAtConsultationVoAssembler.create(doDiagnose));
    }

    return coll;
}
项目:AvoinApotti    文件:Logic.java   
private void addDiagnosis()
{
    if (domain.getHcpLiteUser() == null)
    {
        engine.showMessage("Logged in user is not a HCP.");                     
        return;
    }
    PatientDiagnosisAtConsultationVoCollection coll = new PatientDiagnosisAtConsultationVoCollection();
    for (int i = 0; i < form.GrdDiagnosis().getRows().size(); i++) 
    {
        coll.add(form.GrdDiagnosis().getRows().get(i).getValue());
    }
    form.getGlobalContext().Core.setPatientDiagnosisAtConsultationList(coll);

    //if another Diagnosis is marked as Primary / Main then disable the checkBox in dialog
    boolean bEnable = false;
    for (int i = 0 ; i < form.GrdDiagnosis().getRows().size() ; i++)
    {
        if (form.GrdDiagnosis().getRows().get(i).getColMain() != null)
                bEnable = true;
    }
    form.getGlobalContext().Clinical.setdisableMainCheckBox(bEnable);
    form.getGlobalContext().Core.setPatientDiagnosisAtConsultation(null);

    engine.open(form.getForms().Clinical.DiagnosisDialog);
}
项目:openMAXims    文件:Logic.java   
private boolean saveDiagnosis() 
{
    PatientDiagnosisAtConsultationVoCollection diagnosisList = form.getGlobalContext().Core.getPatientDiagnosisAtConsultationList();

    String[] errors = diagnosisList.validate();
    if(errors != null && errors.length >0)
    {
        engine.showErrors(errors);
        return false;
    }

    try 
    {
        form.getGlobalContext().Core.setPatientDiagnosisAtConsultationList(domain.saveDiagnosis(diagnosisList,!Boolean.TRUE.equals(form.getLocalContext().getAddedDuringCoding()) ? form.getLocalContext().getCareContext() : null));
    } 
    catch (StaleObjectException e) 
    {
        e.printstacktrace();
        engine.showMessage(ConfigFlag.UI.STALE_OBJECT_MESSAGE.getValue());
        form.getGlobalContext().Core.setPatientDiagnosisAtConsultationList(domain.listPatientDiagnosis(form.getLocalContext().getCareContext()));
        populatePatientDiagnosisGrid(form.getGlobalContext().Core.getPatientDiagnosisAtConsultationList());
        return false;
    }

    return true;
}
项目:openMAXims    文件:InterventionsDiagnosisInvestigationsCcImpl.java   
public PatientDiagnosisAtConsultationVoCollection saveDiagnosisSequence(PatientDiagnosisAtConsultationVoCollection patDiagnosis,CodedDiagnosesForAttendanceVoCollection codedDiagnosis,CareContextRefVo careContextRef) throws StaleObjectException
{
    if (codedDiagnosis!=null && codedDiagnosis.size()>0)
    {
        saveCodedDiagnosis(codedDiagnosis);
    }

    PatientDiagnosisAtConsultationVoCollection collpatDiag = null; 

    if (patDiagnosis!=null && patDiagnosis.size()>0)
    {
        collpatDiag= saveDiagnosis(patDiagnosis,careContextRef);
    }

    return collpatDiag;
}
项目:openMAXims    文件:Logic.java   
private void addDiagnosis()
{
    if (domain.getHcpLiteUser() == null)
    {
        engine.showMessage("Logged in user is not a HCP.");                     
        return;
    }
    PatientDiagnosisAtConsultationVoCollection coll = new PatientDiagnosisAtConsultationVoCollection();
    for (int i = 0; i < form.GrdDiagnosis().getRows().size(); i++) 
    {
        coll.add(form.GrdDiagnosis().getRows().get(i).getValue());
    }
    form.getGlobalContext().Core.setPatientDiagnosisAtConsultationList(coll);

    //if another Diagnosis is marked as Primary / Main then disable the checkBox in dialog
    boolean bEnable = false;
    for (int i = 0 ; i < form.GrdDiagnosis().getRows().size() ; i++)
    {
        if (form.GrdDiagnosis().getRows().get(i).getColMain() != null)
                bEnable = true;
    }
    form.getGlobalContext().Clinical.setdisableMainCheckBox(bEnable);
    form.getGlobalContext().Core.setPatientDiagnosisAtConsultation(null);

    engine.open(form.getForms().Clinical.DiagnosisDialog);
}
项目:openMAXims    文件:Logic.java   
private boolean saveDiagnosis() 
{
    PatientDiagnosisAtConsultationVoCollection diagnosisList = form.getGlobalContext().Core.getPatientDiagnosisAtConsultationList();

    String[] errors = diagnosisList.validate();
    if(errors != null && errors.length >0)
    {
        engine.showErrors(errors);
        return false;
    }

    try 
    {
        form.getGlobalContext().Core.setPatientDiagnosisAtConsultationList(domain.saveDiagnosis(diagnosisList));
    } 
    catch (StaleObjectException e) 
    {
        e.printstacktrace();
        engine.showMessage(ConfigFlag.UI.STALE_OBJECT_MESSAGE.getValue());
        form.getGlobalContext().Core.setPatientDiagnosisAtConsultationList(domain.listPatientDiagnosis(form.getLocalContext().getCareContext()));
        populatePatientDiagnosisGrid(form.getGlobalContext().Core.getPatientDiagnosisAtConsultationList());
        return false;
    }

    return true;
}
项目:openMAXims    文件:InterventionsDiagnosisInvestigationsCcImpl.java   
public PatientDiagnosisAtConsultationVoCollection saveDiagnosis(PatientDiagnosisAtConsultationVoCollection diagnosis)   throws StaleObjectException 
{
    if(diagnosis == null)
        throw new CodingRuntimeException("Cannot save a null PatientDiagnosisAtConsultationVoCollection.");

    if(!diagnosis.isValidated())
        throw new CodingRuntimeException("PatientDiagnosisAtConsultationVoCollection is not validated.");

    DomainFactory factory = getDomainFactory();
    PatientDiagnosisAtConsultationVoCollection coll = new PatientDiagnosisAtConsultationVoCollection();

    for(PatientDiagnosisAtConsultationVo diagnose : diagnosis)
    {
        if(diagnose == null)
            continue;

        PatientDiagnosis doDiagnose = PatientDiagnosisAtConsultationVoAssembler.extractPatientDiagnosis(factory,diagnose);

        factory.save(doDiagnose);
        coll.add(PatientDiagnosisAtConsultationVoAssembler.create(doDiagnose));
    }

    return coll;
}
项目:openmaxims-linux    文件:Logic.java   
private boolean saveDiagnosis() 
{
    PatientDiagnosisAtConsultationVoCollection diagnosisList = form.getGlobalContext().Core.getPatientDiagnosisAtConsultationList();

    String[] errors = diagnosisList.validate();
    if(errors != null && errors.length >0)
    {
        engine.showErrors(errors);
        return false;
    }

    try 
    {
        form.getGlobalContext().Core.setPatientDiagnosisAtConsultationList(domain.saveDiagnosis(diagnosisList));
    } 
    catch (StaleObjectException e) 
    {
        e.printstacktrace();
        engine.showMessage(ConfigFlag.UI.STALE_OBJECT_MESSAGE.getValue());
        form.getGlobalContext().Core.setPatientDiagnosisAtConsultationList(domain.listPatientDiagnosis(form.getLocalContext().getCareContext()));
        populatePatientDiagnosisGrid(form.getGlobalContext().Core.getPatientDiagnosisAtConsultationList());
        return false;
    }

    return true;
}
项目:openmaxims-linux    文件:InterventionsDiagnosisInvestigationsCcImpl.java   
public PatientDiagnosisAtConsultationVoCollection saveDiagnosis(PatientDiagnosisAtConsultationVoCollection diagnosis)   throws StaleObjectException 
{
    if(diagnosis == null)
        throw new CodingRuntimeException("Cannot save a null PatientDiagnosisAtConsultationVoCollection.");

    if(!diagnosis.isValidated())
        throw new CodingRuntimeException("PatientDiagnosisAtConsultationVoCollection is not validated.");

    DomainFactory factory = getDomainFactory();
    PatientDiagnosisAtConsultationVoCollection coll = new PatientDiagnosisAtConsultationVoCollection();

    for(PatientDiagnosisAtConsultationVo diagnose : diagnosis)
    {
        if(diagnose == null)
            continue;

        PatientDiagnosis doDiagnose = PatientDiagnosisAtConsultationVoAssembler.extractPatientDiagnosis(factory,diagnose);

        factory.save(doDiagnose);
        coll.add(PatientDiagnosisAtConsultationVoAssembler.create(doDiagnose));
    }

    return coll;
}
项目:AvoinApotti    文件:Logic.java   
private void populatePatientDiagnosisGrid(PatientDiagnosisAtConsultationVoCollection patientDiagnosisAtConsultationVoCollection) 
{
    form.GrdDiagnosis().getRows().clear();

    if(patientDiagnosisAtConsultationVoCollection == null || patientDiagnosisAtConsultationVoCollection.size() == 0)
        return;

    if(Boolean.TRUE.equals(form.getLocalContext().getAddedDuringCoding()))
        patientDiagnosisAtConsultationVoCollection.sort();

    for(PatientDiagnosisAtConsultationVo diagnose : patientDiagnosisAtConsultationVoCollection)
    {
        if(diagnose == null)
            continue;

        ims.emergency.forms.interventionsdiagnosisinvestigationscc.GenForm.GrdDiagnosisRow row = form.GrdDiagnosis().getRows().newRow();
        row.setColDiagnose(diagnose.getDiagnosisDescription());

        boolean isPrimary = isPrimary(diagnose);
        row.setBold(isPrimary);

        if(isPrimary)
        {
            row.setColImage(form.getimages().Core.Pin);
            row.setTooltipForColImage("Main Diagnosis");
            form.getLocalContext().setPrimaryDiagnosis(diagnose);//WDEV-17320
        }

        row.setValue(diagnose);
    }
}
项目:AvoinApotti    文件:Logic.java   
private void saveDiagnosisSequence() 
{
    PatientDiagnosisAtConsultationVoCollection diagnosisList = form.getGlobalContext().Core.getPatientDiagnosisAtConsultationList();

    for (int gridindex = 0 ; gridindex < form.GrdDiagnosis().getRows().size() ; gridindex++)
    {
        PatientDiagnosisAtConsultationVo diagnosisVo = (PatientDiagnosisAtConsultationVo)form.GrdDiagnosis().getRows().get(gridindex).getValue();

        diagnosisVo.setCodingSequence(gridindex);

        diagnosisList.set(diagnosisList.indexOf(diagnosisVo),diagnosisVo);
    }

    String[] errors = diagnosisList.validate();
    if(errors != null && errors.length >0)
    {
        engine.showErrors(errors);
        return;
    }

    try 
    {
        form.getGlobalContext().Core.setPatientDiagnosisAtConsultationList(domain.saveDiagnosis(diagnosisList));
    } 
    catch (StaleObjectException e) 
    {
        e.printstacktrace();
        engine.showMessage(ConfigFlag.UI.STALE_OBJECT_MESSAGE.getValue());
        form.getGlobalContext().Core.setPatientDiagnosisAtConsultationList(domain.listPatientDiagnosis(form.getLocalContext().getCareContext()));
        populatePatientDiagnosisGrid(form.getGlobalContext().Core.getPatientDiagnosisAtConsultationList());
    }
}
项目:AvoinApotti    文件:InterventionsDiagnosisInvestigationsCcImpl.java   
public PatientDiagnosisAtConsultationVoCollection listPatientDiagnosis(CareContextRefVo attendance) 
{
    if(attendance == null || attendance.getID_CareContext() == null)
        return null;

    DomainFactory factory = getDomainFactory();
    String query = "select pd from PatientDiagnosis as pd left join pd.careContext as cc where cc.id = :AttendenceId order by UPPER(pd.diagnosisDescription) asc";

    List<?> list = factory.find(query,new String[] {"AttendenceId"},new Object[] {attendance.getID_CareContext()});

    return PatientDiagnosisAtConsultationVoAssembler.createPatientDiagnosisAtConsultationVoCollectionFromPatientDiagnosis(list);
}
项目:AvoinApotti    文件:Logic.java   
private void updateDiagnosis()
{
    if (domain.getHcpLiteUser() == null)
    {
        engine.showMessage("Logged in user is not a HCP.");                     
        return;
    }

    PatientDiagnosisAtConsultationVoCollection coll = new PatientDiagnosisAtConsultationVoCollection();
    for (int i = 0; i < form.GrdDiagnosis().getRows().size(); i++) 
    {
        coll.add(form.GrdDiagnosis().getRows().get(i).getValue());
    }
    form.getGlobalContext().Core.setPatientDiagnosisAtConsultationList(coll);

    //if another Diagnosis is marked as Primary / Main then disable the checkBox in dialog
    boolean bEnable = false;
    for (int i = 0 ; i < form.GrdDiagnosis().getRows().size() ; i++)
    {
        if (form.GrdDiagnosis().getRows().get(i).getColMain() != null)
        {
            if (i != form.GrdDiagnosis().getSelectedRowIndex())
                bEnable = true;
        }
    }

    form.getGlobalContext().Clinical.setdisableMainCheckBox(bEnable);
    form.getGlobalContext().Core.setPatientDiagnosisAtConsultation(form.GrdDiagnosis().getSelectedRow().getValue());

    engine.open(form.getForms().Clinical.DiagnosisDialog);
}
项目:AvoinApotti    文件:Logic.java   
private PatientDiagnosisAtConsultationVoCollection orderGridByDate(PatientDiagnosisAtConsultationVoCollection diagnosises) 
{
    Vector<PatientDiagnosisAtConsultationVo> v=new Vector<PatientDiagnosisAtConsultationVo>();
    for (int i=0;i<diagnosises.size();i++)
    {
        if (v.size()==0)
            v.add(diagnosises.get(i));
        else
        {
            PatientDiagnosisAtConsultationVo diagnosis = diagnosises.get(i);
            if (diagnosis.getAuthoringInfoIsNotNull()&&diagnosis.getAuthoringInfo().getAuthoringDateTimeIsNotNull())
            {
                int n=v.size();
                for (int j=0;j<n;j++)
                {
                    if (v.get(j).getAuthoringInfoIsNotNull()&&v.get(j).getAuthoringInfo().getAuthoringDateTimeIsNotNull())
                    {
                        if (diagnosis.getAuthoringInfo().getAuthoringDateTime().compareto(v.get(j).getAuthoringInfo().getAuthoringDateTime())<0)
                            v.add(j,diagnosis);
                        else
                            v.add(diagnosis);
                    }
                }
            }
        }
    }
    diagnosises.clear();
    for (int x=0;x<v.size();x++)
    {
        diagnosises.add(v.get(x));
    }
    return diagnosises;
}
项目:AvoinApotti    文件:DiagnosisDialogImpl.java   
public PatientDiagnosisAtConsultationVoCollection listPatientDiagnosis(CareContextRefVo attendance) 
{
    if(attendance == null || attendance.getID_CareContext() == null)
        return null;

    DomainFactory factory = getDomainFactory();
    String query = "select pd from PatientDiagnosis as pd left join pd.careContext as cc where cc.id = :AttendenceId order by UPPER(pd.diagnosisDescription) asc";

    List<?> list = factory.find(query,new Object[] {attendance.getID_CareContext()});

    return PatientDiagnosisAtConsultationVoAssembler.createPatientDiagnosisAtConsultationVoCollectionFromPatientDiagnosis(list);
}
项目:openMAXims    文件:InterventionsDiagnosisInvestigationsCcImpl.java   
public PatientDiagnosisAtConsultationVoCollection listPatientDiagnosis(CareContextRefVo attendance) 
{
    if(attendance == null || attendance.getID_CareContext() == null)
        return null;

    DomainFactory factory = getDomainFactory();
    String query = "select pd from PatientDiagnosis as pd left join pd.careContext as cc where cc.id = :AttendenceId order by UPPER(pd.diagnosisDescription) asc";

    List<?> list = factory.find(query,new Object[] {attendance.getID_CareContext()});

    return PatientDiagnosisAtConsultationVoAssembler.createPatientDiagnosisAtConsultationVoCollectionFromPatientDiagnosis(list);
}
项目:openMAXims    文件:Logic.java   
private void updateDiagnosis()
{
    if (domain.getHcpLiteUser() == null)
    {
        engine.showMessage("Logged in user is not a HCP.");                     
        return;
    }

    PatientDiagnosisAtConsultationVoCollection coll = new PatientDiagnosisAtConsultationVoCollection();
    for (int i = 0; i < form.GrdDiagnosis().getRows().size(); i++) 
    {
        coll.add(form.GrdDiagnosis().getRows().get(i).getValue());
    }
    form.getGlobalContext().Core.setPatientDiagnosisAtConsultationList(coll);

    //if another Diagnosis is marked as Primary / Main then disable the checkBox in dialog
    boolean bEnable = false;
    for (int i = 0 ; i < form.GrdDiagnosis().getRows().size() ; i++)
    {
        if (form.GrdDiagnosis().getRows().get(i).getColMain() != null)
        {
            if (i != form.GrdDiagnosis().getSelectedRowIndex())
                bEnable = true;
        }
    }

    form.getGlobalContext().Clinical.setdisableMainCheckBox(bEnable);
    form.getGlobalContext().Core.setPatientDiagnosisAtConsultation(form.GrdDiagnosis().getSelectedRow().getValue());

    engine.open(form.getForms().Clinical.DiagnosisDialog);
}
项目:openMAXims    文件:Logic.java   
private PatientDiagnosisAtConsultationVoCollection orderGridByDate(PatientDiagnosisAtConsultationVoCollection diagnosises) 
{
    Vector<PatientDiagnosisAtConsultationVo> v=new Vector<PatientDiagnosisAtConsultationVo>();
    for (int i=0;i<diagnosises.size();i++)
    {
        if (v.size()==0)
            v.add(diagnosises.get(i));
        else
        {
            PatientDiagnosisAtConsultationVo diagnosis = diagnosises.get(i);
            if (diagnosis.getAuthoringInfoIsNotNull()&&diagnosis.getAuthoringInfo().getAuthoringDateTimeIsNotNull())
            {
                int n=v.size();
                for (int j=0;j<n;j++)
                {
                    if (v.get(j).getAuthoringInfoIsNotNull()&&v.get(j).getAuthoringInfo().getAuthoringDateTimeIsNotNull())
                    {
                        if (diagnosis.getAuthoringInfo().getAuthoringDateTime().compareto(v.get(j).getAuthoringInfo().getAuthoringDateTime())<0)
                            v.add(j,diagnosis);
                        else
                            v.add(diagnosis);
                    }
                }
            }
        }
    }
    diagnosises.clear();
    for (int x=0;x<v.size();x++)
    {
        diagnosises.add(v.get(x));
    }
    return diagnosises;
}
项目:openMAXims    文件:DiagnosisDialogImpl.java   
public PatientDiagnosisAtConsultationVoCollection listPatientDiagnosis(CareContextRefVo attendance) 
{
    if(attendance == null || attendance.getID_CareContext() == null)
        return null;

    DomainFactory factory = getDomainFactory();
    String query = "select pd from PatientDiagnosis as pd left join pd.careContext as cc where cc.id = :AttendenceId order by UPPER(pd.diagnosisDescription) asc";

    List<?> list = factory.find(query,new Object[] {attendance.getID_CareContext()});

    return PatientDiagnosisAtConsultationVoAssembler.createPatientDiagnosisAtConsultationVoCollectionFromPatientDiagnosis(list);
}
项目:openMAXims    文件:Logic.java   
private void populatePatientDiagnosisGrid(PatientDiagnosisAtConsultationVoCollection patientDiagnosisAtConsultationVoCollection) 
{
    form.GrdDiagnosis().getRows().clear();

    if(patientDiagnosisAtConsultationVoCollection == null || patientDiagnosisAtConsultationVoCollection.size() == 0)
        return;

    if(Boolean.TRUE.equals(form.getLocalContext().getAddedDuringCoding()))
        patientDiagnosisAtConsultationVoCollection.sort();

    for(PatientDiagnosisAtConsultationVo diagnose : patientDiagnosisAtConsultationVoCollection)
    {
        if(diagnose == null)
            continue;

        ims.emergency.forms.interventionsdiagnosisinvestigationscc.GenForm.GrdDiagnosisRow row = form.GrdDiagnosis().getRows().newRow();
        row.setColDiagnose(diagnose.getDiagnosisDescription());

        boolean isPrimary = isPrimary(diagnose);
        row.setBold(isPrimary);

        if(isPrimary)
        {
            row.setColImage(form.getimages().Core.Pin);
            row.setTooltipForColImage("Main Diagnosis");
            form.getLocalContext().setPrimaryDiagnosis(diagnose);//WDEV-17320
        }

        row.setValue(diagnose);
    }
}
项目:openMAXims    文件:Logic.java   
private void saveDiagnosisSequence() 
{
    PatientDiagnosisAtConsultationVoCollection diagnosisList = form.getGlobalContext().Core.getPatientDiagnosisAtConsultationList();

    for (int gridindex = 0 ; gridindex < form.GrdDiagnosis().getRows().size() ; gridindex++)
    {
        PatientDiagnosisAtConsultationVo diagnosisVo = (PatientDiagnosisAtConsultationVo)form.GrdDiagnosis().getRows().get(gridindex).getValue();

        diagnosisVo.setCodingSequence(gridindex);

        diagnosisList.set(diagnosisList.indexOf(diagnosisVo),diagnosisVo);
    }

    String[] errors = diagnosisList.validate();
    if(errors != null && errors.length >0)
    {
        engine.showErrors(errors);
        return;
    }

    try 
    {
        form.getGlobalContext().Core.setPatientDiagnosisAtConsultationList(domain.saveDiagnosis(diagnosisList));
    } 
    catch (StaleObjectException e) 
    {
        e.printstacktrace();
        engine.showMessage(ConfigFlag.UI.STALE_OBJECT_MESSAGE.getValue());
        form.getGlobalContext().Core.setPatientDiagnosisAtConsultationList(domain.listPatientDiagnosis(form.getLocalContext().getCareContext()));
        populatePatientDiagnosisGrid(form.getGlobalContext().Core.getPatientDiagnosisAtConsultationList());
    }
}
项目:openmaxims-linux    文件:Logic.java   
private void populatePatientDiagnosisGrid(PatientDiagnosisAtConsultationVoCollection patientDiagnosisAtConsultationVoCollection) 
{
    form.GrdDiagnosis().getRows().clear();

    if(patientDiagnosisAtConsultationVoCollection == null || patientDiagnosisAtConsultationVoCollection.size() == 0)
        return;

    if(Boolean.TRUE.equals(form.getLocalContext().getAddedDuringCoding()))
        patientDiagnosisAtConsultationVoCollection.sort();

    for(PatientDiagnosisAtConsultationVo diagnose : patientDiagnosisAtConsultationVoCollection)
    {
        if(diagnose == null)
            continue;

        ims.emergency.forms.interventionsdiagnosisinvestigationscc.GenForm.GrdDiagnosisRow row = form.GrdDiagnosis().getRows().newRow();
        row.setColDiagnose(diagnose.getDiagnosisDescription());

        boolean isPrimary = isPrimary(diagnose);
        row.setBold(isPrimary);

        if(isPrimary)
        {
            row.setColImage(form.getimages().Core.Pin);
            row.setTooltipForColImage("Main Diagnosis");
            form.getLocalContext().setPrimaryDiagnosis(diagnose);//WDEV-17320
        }

        row.setValue(diagnose);
    }
}
项目:openmaxims-linux    文件:Logic.java   
private void saveDiagnosisSequence() 
{
    PatientDiagnosisAtConsultationVoCollection diagnosisList = form.getGlobalContext().Core.getPatientDiagnosisAtConsultationList();

    for (int gridindex = 0 ; gridindex < form.GrdDiagnosis().getRows().size() ; gridindex++)
    {
        PatientDiagnosisAtConsultationVo diagnosisVo = (PatientDiagnosisAtConsultationVo)form.GrdDiagnosis().getRows().get(gridindex).getValue();

        diagnosisVo.setCodingSequence(gridindex);

        diagnosisList.set(diagnosisList.indexOf(diagnosisVo),diagnosisVo);
    }

    String[] errors = diagnosisList.validate();
    if(errors != null && errors.length >0)
    {
        engine.showErrors(errors);
        return;
    }

    try 
    {
        form.getGlobalContext().Core.setPatientDiagnosisAtConsultationList(domain.saveDiagnosis(diagnosisList));
    } 
    catch (StaleObjectException e) 
    {
        e.printstacktrace();
        engine.showMessage(ConfigFlag.UI.STALE_OBJECT_MESSAGE.getValue());
        form.getGlobalContext().Core.setPatientDiagnosisAtConsultationList(domain.listPatientDiagnosis(form.getLocalContext().getCareContext()));
        populatePatientDiagnosisGrid(form.getGlobalContext().Core.getPatientDiagnosisAtConsultationList());
    }
}
项目:openmaxims-linux    文件:InterventionsDiagnosisInvestigationsCcImpl.java   
public PatientDiagnosisAtConsultationVoCollection listPatientDiagnosis(CareContextRefVo attendance) 
{
    if(attendance == null || attendance.getID_CareContext() == null)
        return null;

    DomainFactory factory = getDomainFactory();
    String query = "select pd from PatientDiagnosis as pd left join pd.careContext as cc where cc.id = :AttendenceId order by UPPER(pd.diagnosisDescription) asc";

    List<?> list = factory.find(query,new Object[] {attendance.getID_CareContext()});

    return PatientDiagnosisAtConsultationVoAssembler.createPatientDiagnosisAtConsultationVoCollectionFromPatientDiagnosis(list);
}
项目:openmaxims-linux    文件:DiagnosisDialogImpl.java   
public PatientDiagnosisAtConsultationVoCollection listPatientDiagnosis(CareContextRefVo attendance) 
{
    if(attendance == null || attendance.getID_CareContext() == null)
        return null;

    DomainFactory factory = getDomainFactory();
    String query = "select pd from PatientDiagnosis as pd left join pd.careContext as cc where cc.id = :AttendenceId order by UPPER(pd.diagnosisDescription) asc";

    List<?> list = factory.find(query,new Object[] {attendance.getID_CareContext()});

    return PatientDiagnosisAtConsultationVoAssembler.createPatientDiagnosisAtConsultationVoCollectionFromPatientDiagnosis(list);
}
项目:AvoinApotti    文件:Logic.java   
private DiagnosisManagementVo populateData(DiagnosisManagementVo voDiagnosisManagement) 
{
    if(voDiagnosisManagement == null)
        voDiagnosisManagement = new ims.RefMan.vo.DiagnosisManagementVo();

    if (form.chkFirstDefinitiveSystem().getValue() &&
            form.dteFirstDefinitiveSystem().getValue() == null) 
    {
        engine.showMessage("If First Definitive Treatment is checked DateTime is mandatory");
        return null;
    }

    voDiagnosisManagement.setID_DiagnosisManagement(null);
    voDiagnosisManagement.setAdviceAndInfoGiven(form.richTextAdviceAndinformationGiven().getValue());
    voDiagnosisManagement.setActionrequiredByGPNotes(form.richTextActionrequiredByGP().getValue());
    voDiagnosisManagement.setInvestigationsAndResults(form.richTextSummaryOfInvestigationsAndResults().getValue());

    if (form.chkFirstDefinitiveSystem().getValue() &&
            form.dteFirstDefinitiveSystem().getValue() != null) 
    {
        voDiagnosisManagement.setFirstDefinitiveTreatmentDate(form.dteFirstDefinitiveSystem().getValue());
    }
    else {
        voDiagnosisManagement.setFirstDefinitiveTreatmentDate(null);
    }

    PatientDiagnosisAtConsultationVoCollection  coll = new PatientDiagnosisAtConsultationVoCollection();
    for(int x = 0; x < this.form.GrdDiagnosis().getRows().size(); x++)
    {
        coll.add(form.GrdDiagnosis().getRows().get(x).getValue());
    }
    if(coll.size()>0)
        voDiagnosisManagement.setDiagnosis(coll);
    else
        voDiagnosisManagement.setDiagnosis(null);

    PatientProcedureShortVoCollection collProc = new PatientProcedureShortVoCollection();
    for(int x = 0; x < this.form.GrdProcedures().getRows().size(); x++)
    {
        collProc.add(form.GrdProcedures().getRows().get(x).getValue());
    }
    if(collProc.size()>0)
        voDiagnosisManagement.setProcedures(collProc);
    else
        voDiagnosisManagement.setProcedures(null);


    if(form.GroupAction().getValue().equals(GenForm.GroupActionEnumeration.rdoActionYes))
        voDiagnosisManagement.setActionrequiredByGP(YesNo.YES);
    else
        voDiagnosisManagement.setActionrequiredByGP(YesNo.NO);

    if(form.GroupConsent().getValue().equals(GenForm.GroupConsentEnumeration.rdoConsentYes))
        voDiagnosisManagement.setPatientConsent(YesNo.YES);
    else
        voDiagnosisManagement.setPatientConsent(YesNo.NO);

    voDiagnosisManagement.setCatsReferral(form.getGlobalContext().RefMan.getCatsReferral());
    voDiagnosisManagement.setLastAuthoringHCP(form.cclastUpdating().getValue());
    voDiagnosisManagement.setRecordinginformation(populateRecordinfInfo());

    return voDiagnosisManagement;
}
项目:AvoinApotti    文件:Logic.java   
private void initialize(Object[] args)
{
    if(args != null && args.length > 0)
    {
        if(args[0] instanceof Boolean)
        {
            form.getLocalContext().setAddedDuringCoding(Boolean.TRUE);
        }
    }

    initializeCustomControl();

    if (form.getGlobalContext().Core.getPatientDiagnosisAtConsultation()!=null)
    {
        populateScreenFromData( form.getGlobalContext().Core.getPatientDiagnosisAtConsultation());
    }
    else
    {
        AuthoringinformationVo voAuthoringinformation=new AuthoringinformationVo();
        voAuthoringinformation.setAuthoringDateTime(new DateTime());
        if (domain.getHcpLiteUser()!=null)
            voAuthoringinformation.setAuthoringHcp((HcpLiteVo) domain.getHcpLiteUser());
        form.ccAuthoringInfo().setValue(voAuthoringinformation);
    }

    if (form.getGlobalContext().Core.getPatientDiagnosisAtConsultationList()==null)
    {
        PatientDiagnosisAtConsultationVoCollection diagnosisCollection=new PatientDiagnosisAtConsultationVoCollection();
        form.getGlobalContext().Core.setPatientDiagnosisAtConsultationList(diagnosisCollection);
    }

    if (domain.getHcpLiteUser() == null)
    {
        form.chkMain().setEnabled(false);
        form.cmbStatus().setEnabled(false);
        form.qmbDiagnosis().setEnabled(false);
        form.setccAuthoringInfoEnabled(false);

        if (engine.hasRight(AppRight.ALLOW_EDIT_CONSULTATION_DIAGNOSIS))
        {
            form.qmbDiagnosis().setEnabled(false);
        }
    }

    if (form.getGlobalContext().Clinical.getdisableMainCheckBoxIsNotNull() && form.getGlobalContext().Clinical.getdisableMainCheckBox())
    {
        form.chkMain().setEnabled(false);
    }
}
项目:openMAXims    文件:Logic.java   
private void populatePatientDiagnosisGrid(PatientDiagnosisAtConsultationVoCollection patientDiagnosisAtConsultationVoCollection) 
{
    form.chkNoDiagnoses().setValue(form.getLocalContext().getAttendDiagInvTreatStatus() != null && Boolean.TRUE.equals(form.getLocalContext().getAttendDiagInvTreatStatus().getNoDiagnoses()));
    form.chkDiagnosesNotRecorded().setValue(form.getLocalContext().getAttendDiagInvTreatStatus() != null && Boolean.TRUE.equals(form.getLocalContext().getAttendDiagInvTreatStatus().getDiagnosesNotRecorded()));

    form.GrdDiagnosis().getRows().clear();

    //WDEV-19239

    CodedDiagnosesForAttendanceVoCollection collCoddedDiag = Boolean.TRUE.equals(form.getLocalContext().getAddedDuringCoding()) ? domain.listCodedDiagnosesForAttendance(form.getLocalContext().getCareContext(),false) : null;
    form.getGlobalContext().Core.setCodedDiagnosisForAttendanceList(collCoddedDiag);

    if(patientDiagnosisAtConsultationVoCollection == null && collCoddedDiag ==null)
        return;

    ArrayList<Object> listAllDiag = new ArrayList<Object>();

    for(int i=0;patientDiagnosisAtConsultationVoCollection!=null && i<patientDiagnosisAtConsultationVoCollection.size();i++)
    {
        PatientDiagnosisAtConsultationVo diagnose = patientDiagnosisAtConsultationVoCollection.get(i);
        listAllDiag.add(diagnose);  
    }

    for(int i=0;collCoddedDiag!=null && i<collCoddedDiag.size();i++)
    {
        CodedDiagnosesForAttendanceVo codedDiag = collCoddedDiag.get(i);
        listAllDiag.add(codedDiag);
    }

    Collections.sort(listAllDiag,new CodingSequenceComparator(SortOrder.ASCENDING));

    for (int i=0;i<listAllDiag.size();i++)
    {
        if (listAllDiag.get(i)!=null && listAllDiag.get(i) instanceof PatientDiagnosisAtConsultationVo)
        {
            addPatientDiagRow((PatientDiagnosisAtConsultationVo)listAllDiag.get(i));
        }
        else if (listAllDiag.get(i)!=null && listAllDiag.get(i) instanceof CodedDiagnosesForAttendanceVo)
        {
            addCodedDiagRow((CodedDiagnosesForAttendanceVo)listAllDiag.get(i));
        }
    }

    //if(Boolean.TRUE.equals(form.getLocalContext().getAddedDuringCoding()))
        //patientDiagnosisAtConsultationVoCollection.sort();

    /*
    for(PatientDiagnosisAtConsultationVo diagnose : patientDiagnosisAtConsultationVoCollection)
    {
        addPatientDiagRow(diagnose);
    }

    for(CodedDiagnosesForAttendanceVo codedDiag : collCoddedDiag)
    {
        addCodedDiagRow(codedDiag);
    }   
    */
}
项目:openMAXims    文件:Logic.java   
private void saveDiagnosisSequence() 
{
    if (form.GrdDiagnosis().getRows().size()==0)
        return;

    PatientDiagnosisAtConsultationVoCollection diagnosisList=new PatientDiagnosisAtConsultationVoCollection();
    CodedDiagnosesForAttendanceVoCollection codedDiagnosisList=new CodedDiagnosesForAttendanceVoCollection();


    for (int gridindex = 0 ; gridindex < form.GrdDiagnosis().getRows().size() ; gridindex++)
    {
        ValueObject diag = form.GrdDiagnosis().getRows().get(gridindex).getValue();

        if (diag!=null && diag instanceof PatientDiagnosisAtConsultationVo)
        {
            PatientDiagnosisAtConsultationVo patDiag = (PatientDiagnosisAtConsultationVo) diag;
            patDiag.setCodingSequence(gridindex);
            diagnosisList.add(patDiag);
        }
        else if (diag!=null && diag instanceof CodedDiagnosesForAttendanceVo)
        {
            CodedDiagnosesForAttendanceVo codedDiag = (CodedDiagnosesForAttendanceVo) diag;
            codedDiag.setCodingSequence(gridindex);
            codedDiagnosisList.add(codedDiag);
        }
    }

    String[] errors = diagnosisList.validate(codedDiagnosisList.validate());
    if(errors != null && errors.length >0)
    {
        engine.showErrors(errors);
        return;
    }

    try 
    {
        form.getGlobalContext().Core.setPatientDiagnosisAtConsultationList(domain.saveDiagnosisSequence(diagnosisList,codedDiagnosisList,form.getLocalContext().getCareContext()));
    } 
    catch (StaleObjectException e) 
    {
        e.printstacktrace();
        engine.showMessage(ConfigFlag.UI.STALE_OBJECT_MESSAGE.getValue());
        form.getGlobalContext().Core.setPatientDiagnosisAtConsultationList(domain.listPatientDiagnosis(form.getLocalContext().getCareContext()));
        populatePatientDiagnosisGrid(form.getGlobalContext().Core.getPatientDiagnosisAtConsultationList());
    }

}
项目:openMAXims    文件:InterventionsDiagnosisInvestigationsCcImpl.java   
public PatientDiagnosisAtConsultationVoCollection saveDiagnosis(PatientDiagnosisAtConsultationVoCollection diagnosis,CareContextRefVo careContext) throws StaleObjectException 
{
    if(diagnosis == null)
        throw new CodingRuntimeException("Cannot save a null PatientDiagnosisAtConsultationVoCollection.");

    if(!diagnosis.isValidated())
        throw new CodingRuntimeException("PatientDiagnosisAtConsultationVoCollection is not validated.");

    DomainFactory factory = getDomainFactory();
    PatientDiagnosisAtConsultationVoCollection coll = new PatientDiagnosisAtConsultationVoCollection();

    //WDEV-19239
    boolean isPatientDiagPrimary=false; 
    CareContextRefVo careContextRef = null;
    for(PatientDiagnosisAtConsultationVo diagnose : diagnosis)
    {
        if(diagnose == null)
            continue;

        careContextRef=diagnose.getCareContext();
        if (isPrimary(diagnose))
            isPatientDiagPrimary=true;

        PatientDiagnosis doDiagnose = PatientDiagnosisAtConsultationVoAssembler.extractPatientDiagnosis(factory,diagnose);

        factory.save(doDiagnose);
        coll.add(PatientDiagnosisAtConsultationVoAssembler.create(doDiagnose));
    }

    CodedDiagnosesForAttendanceVoCollection collCodedDiag = listCodedDiagnosesForAttendance(careContextRef,true);

    if (isPatientDiagPrimary && collCodedDiag!=null && collCodedDiag.size()>0)
    {
        for (CodedDiagnosesForAttendanceVo codedDiag : collCodedDiag)
        {
            codedDiag.setIsMain(false);

            CodedDiagForAttendance doCodedDiag = CodedDiagnosesForAttendanceVoAssembler.extractCodedDiagForAttendance(factory,codedDiag);
            factory.save(doCodedDiag);
        }
    }

    if(careContext != null)
    {
        AttendDiagInvTreatStatusVo attendDiagInvTreatStatus = getAttendDiagInvTreatStatus(careContext);

        if(attendDiagInvTreatStatus != null)
        {
            attendDiagInvTreatStatus.setNoDiagnoses(null);
            attendDiagInvTreatStatus.setDiagnosesNotRecorded(null);

            AttendDiagInvTreatStatus doAttendDiagInvTreatStatus = AttendDiagInvTreatStatusVoAssembler.extractAttendDiagInvTreatStatus(factory,attendDiagInvTreatStatus);
            factory.save(doAttendDiagInvTreatStatus);
        }
    }

    return coll;
}
项目:openMAXims    文件:Logic.java   
private DiagnosisManagementVo populateData(DiagnosisManagementVo voDiagnosisManagement) 
{
    if(voDiagnosisManagement == null)
        voDiagnosisManagement = new ims.RefMan.vo.DiagnosisManagementVo();

    if (form.chkFirstDefinitiveSystem().getValue() &&
            form.dteFirstDefinitiveSystem().getValue() == null) 
    {
        engine.showMessage("If First Definitive Treatment is checked DateTime is mandatory");
        return null;
    }

    voDiagnosisManagement.setID_DiagnosisManagement(null);
    voDiagnosisManagement.setAdviceAndInfoGiven(form.richTextAdviceAndinformationGiven().getValue());
    voDiagnosisManagement.setActionrequiredByGPNotes(form.richTextActionrequiredByGP().getValue());
    voDiagnosisManagement.setInvestigationsAndResults(form.richTextSummaryOfInvestigationsAndResults().getValue());

    if (form.chkFirstDefinitiveSystem().getValue() &&
            form.dteFirstDefinitiveSystem().getValue() != null) 
    {
        voDiagnosisManagement.setFirstDefinitiveTreatmentDate(form.dteFirstDefinitiveSystem().getValue());
    }
    else {
        voDiagnosisManagement.setFirstDefinitiveTreatmentDate(null);
    }

    PatientDiagnosisAtConsultationVoCollection  coll = new PatientDiagnosisAtConsultationVoCollection();
    for(int x = 0; x < this.form.GrdDiagnosis().getRows().size(); x++)
    {
        coll.add(form.GrdDiagnosis().getRows().get(x).getValue());
    }
    if(coll.size()>0)
        voDiagnosisManagement.setDiagnosis(coll);
    else
        voDiagnosisManagement.setDiagnosis(null);

    PatientProcedureShortVoCollection collProc = new PatientProcedureShortVoCollection();
    for(int x = 0; x < this.form.GrdProcedures().getRows().size(); x++)
    {
        collProc.add(form.GrdProcedures().getRows().get(x).getValue());
    }
    if(collProc.size()>0)
        voDiagnosisManagement.setProcedures(collProc);
    else
        voDiagnosisManagement.setProcedures(null);


    if(form.GroupAction().getValue().equals(GenForm.GroupActionEnumeration.rdoActionYes))
        voDiagnosisManagement.setActionrequiredByGP(YesNo.YES);
    else
        voDiagnosisManagement.setActionrequiredByGP(YesNo.NO);

    if(form.GroupConsent().getValue().equals(GenForm.GroupConsentEnumeration.rdoConsentYes))
        voDiagnosisManagement.setPatientConsent(YesNo.YES);
    else
        voDiagnosisManagement.setPatientConsent(YesNo.NO);

    voDiagnosisManagement.setCatsReferral(form.getGlobalContext().RefMan.getCatsReferral());
    voDiagnosisManagement.setLastAuthoringHCP(form.cclastUpdating().getValue());
    voDiagnosisManagement.setRecordinginformation(populateRecordinfInfo());

    return voDiagnosisManagement;
}
项目:openMAXims    文件:Logic.java   
private void initialize(Object[] args)
{
    if(args != null && args.length > 0)
    {
        if(args[0] instanceof Boolean)
        {
            form.getLocalContext().setAddedDuringCoding(Boolean.TRUE);
        }
    }

    if(args != null && args.length > 1 && args[1] instanceof Boolean) //WDEV-21039
    {
        form.getLocalContext().setIncludeExcludedKeywords((Boolean) args[1]);   
    }

    initializeCustomControl();

    if (form.getGlobalContext().Core.getPatientDiagnosisAtConsultation()!=null)
    {
        populateScreenFromData( form.getGlobalContext().Core.getPatientDiagnosisAtConsultation());
    }
    else
    {
        AuthoringinformationVo voAuthoringinformation=new AuthoringinformationVo();
        voAuthoringinformation.setAuthoringDateTime(new DateTime());
        if (domain.getHcpLiteUser()!=null)
            voAuthoringinformation.setAuthoringHcp((HcpLiteVo) domain.getHcpLiteUser());
        form.ccAuthoringInfo().setValue(voAuthoringinformation);
    }

    if (form.getGlobalContext().Core.getPatientDiagnosisAtConsultationList()==null)
    {
        PatientDiagnosisAtConsultationVoCollection diagnosisCollection=new PatientDiagnosisAtConsultationVoCollection();
        form.getGlobalContext().Core.setPatientDiagnosisAtConsultationList(diagnosisCollection);
    }

    if (domain.getHcpLiteUser() == null)
    {
        form.chkMain().setEnabled(false);
        form.cmbStatus().setEnabled(false);
        form.qmbDiagnosis().setEnabled(false);
        form.setccAuthoringInfoEnabled(false);

        if (engine.hasRight(AppRight.ALLOW_EDIT_CONSULTATION_DIAGNOSIS))
        {
            form.qmbDiagnosis().setEnabled(false);
        }
    }

    if (form.getGlobalContext().Clinical.getdisableMainCheckBoxIsNotNull() && form.getGlobalContext().Clinical.getdisableMainCheckBox())
    {
        form.chkMain().setEnabled(false);
    }

    //WDEV-19454
    form.chkSpecialtyHotlist().setVisible(!ConfigFlag.UI.SHOW_DIAGNOSES_DATABASE.getValue());
    form.GroupSelection().setVisible(ConfigFlag.UI.SHOW_DIAGNOSES_DATABASE.getValue());
    form.getLocalContext().setSearchBySpecialtyHotlist(true);
    if (ConfigFlag.UI.SHOW_DIAGNOSES_DATABASE.getValue())
    {
        form.GroupSelection().setValue(GroupSelectionEnumeration.rdoDiagSpec);//WDEV-19056
    }
    else
    {
        form.chkSpecialtyHotlist().setValue(true);
    }

    form.qmbDiagnosis().enableLiveSearch(ConfigFlag.UI.DIAGNOSIS_SEARCHING_MECHANISM.getValue().equals("Live")); //WDEV-22287

}
项目:openMAXims    文件:Logic.java   
private void initialize(Object[] args)
{
    if(args != null && args.length > 0)
    {
        if(args[0] instanceof Boolean)
        {
            form.getLocalContext().setAddedDuringCoding(Boolean.TRUE);
        }
    }

    initializeCustomControl();

    if (form.getGlobalContext().Core.getPatientDiagnosisAtConsultation()!=null)
    {
        populateScreenFromData( form.getGlobalContext().Core.getPatientDiagnosisAtConsultation());
    }
    else
    {
        AuthoringinformationVo voAuthoringinformation=new AuthoringinformationVo();
        voAuthoringinformation.setAuthoringDateTime(new DateTime());
        if (domain.getHcpLiteUser()!=null)
            voAuthoringinformation.setAuthoringHcp((HcpLiteVo) domain.getHcpLiteUser());
        form.ccAuthoringInfo().setValue(voAuthoringinformation);
    }

    if (form.getGlobalContext().Core.getPatientDiagnosisAtConsultationList()==null)
    {
        PatientDiagnosisAtConsultationVoCollection diagnosisCollection=new PatientDiagnosisAtConsultationVoCollection();
        form.getGlobalContext().Core.setPatientDiagnosisAtConsultationList(diagnosisCollection);
    }

    if (domain.getHcpLiteUser() == null)
    {
        form.chkMain().setEnabled(false);
        form.cmbStatus().setEnabled(false);
        form.qmbDiagnosis().setEnabled(false);
        form.setccAuthoringInfoEnabled(false);

        if (engine.hasRight(AppRight.ALLOW_EDIT_CONSULTATION_DIAGNOSIS))
        {
            form.qmbDiagnosis().setEnabled(false);
        }
    }

    if (form.getGlobalContext().Clinical.getdisableMainCheckBoxIsNotNull() && form.getGlobalContext().Clinical.getdisableMainCheckBox())
    {
        form.chkMain().setEnabled(false);
    }
}

ims.core.vo.PatientSurgicalOperationVoCollection的实例源码

ims.core.vo.PatientSurgicalOperationVoCollection的实例源码

项目:AvoinApotti    文件:Logic.java   
private void populateOperationsGrid() 
{
    form.GrdOperations().getRows().clear();

    PatientSurgicalOperationVoCollection voCollOperations = domain.listCareContextSurgicalOperations(form.getGlobalContext().Core.getCurrentCareContext(),engine.isRIEMode());
    if(voCollOperations != null)
    {
        GenForm.GrdOperationsRow row = null;
        for(int i=0;i<voCollOperations.size();i++)
        {
            row = form.GrdOperations().getRows().newRow();
            if(voCollOperations.get(i).getProcDateIsNotNull())
                row.setcolDate(voCollOperations.get(i).getProcDate().toString());
            if(voCollOperations.get(i).getProcedure() != null)
                row.setcolProcedure(voCollOperations.get(i).getProcedure().getProcedureName());

            //28/10/2005 - Bug reported - Location not saved
            if(voCollOperations.get(i).getLocationIsNotNull())
                row.setcollocation(voCollOperations.get(i).getLocation());

            row.setValue(voCollOperations.get(i));
        }
    }       

}
项目:openMAXims    文件:Logic.java   
private void populateOperationsGrid() 
{
    form.GrdOperations().getRows().clear();

    PatientSurgicalOperationVoCollection voCollOperations = domain.listCareContextSurgicalOperations(form.getGlobalContext().Core.getCurrentCareContext(),engine.isRIEMode());
    if(voCollOperations != null)
    {
        GenForm.GrdOperationsRow row = null;
        for(int i=0;i<voCollOperations.size();i++)
        {
            row = form.GrdOperations().getRows().newRow();
            if(voCollOperations.get(i).getProcDateIsNotNull())
                row.setcolDate(voCollOperations.get(i).getProcDate().toString());
            if(voCollOperations.get(i).getProcedure() != null)
                row.setcolProcedure(voCollOperations.get(i).getProcedure().getProcedureName());

            //28/10/2005 - Bug reported - Location not saved
            if(voCollOperations.get(i).getLocationIsNotNull())
                row.setcollocation(voCollOperations.get(i).getLocation());

            row.setValue(voCollOperations.get(i));
        }
    }       

}
项目:openmaxims-linux    文件:Logic.java   
private void populateOperationsGrid() 
{
    form.GrdOperations().getRows().clear();

    PatientSurgicalOperationVoCollection voCollOperations = domain.listCareContextSurgicalOperations(form.getGlobalContext().Core.getCurrentCareContext(),engine.isRIEMode());
    if(voCollOperations != null)
    {
        GenForm.GrdOperationsRow row = null;
        for(int i=0;i<voCollOperations.size();i++)
        {
            row = form.GrdOperations().getRows().newRow();
            if(voCollOperations.get(i).getProcDateIsNotNull())
                row.setcolDate(voCollOperations.get(i).getProcDate().toString());
            if(voCollOperations.get(i).getProcedure() != null)
                row.setcolProcedure(voCollOperations.get(i).getProcedure().getProcedureName());

            //28/10/2005 - Bug reported - Location not saved
            if(voCollOperations.get(i).getLocationIsNotNull())
                row.setcollocation(voCollOperations.get(i).getLocation());

            row.setValue(voCollOperations.get(i));
        }
    }       

}
项目:AvoinApotti    文件:SurgicalOperationsImpl.java   
private PatientSurgicalOperationVoCollection listSurgicalOperations(CareContextRefVo refCareContext,ClinicalContactShortVo voClinicalContactShort,Boolean bRIE) {

    DomainFactory factory = getDomainFactory();
    StringBuffer hql = new StringBuffer(" ");
    String query = "from PatientSurgicalOperation t ";
    ArrayList markers = new ArrayList();
    ArrayList values = new ArrayList();
    String andStr = " ";

    if (voClinicalContactShort != null)
    {
        hql.append(andStr + " t.clinicalContact.id =:rcc");
        markers.add("rcc");
        values.add(voClinicalContactShort.getID_ClinicalContact());
        andStr = " and ";
    }

    if (refCareContext != null)
    {
        hql.append(andStr + " t.careContext.id =:cc");
        markers.add("cc");
        values.add(refCareContext.getID_CareContext());
        andStr = " and ";
    }

    if (markers.size() > 0)
        query += " where ";
    query += hql.toString();
    List patientProcedures = factory.find(query,markers,values);

    return PatientSurgicalOperationVoAssembler.createPatientSurgicalOperationVoCollectionFromPatientSurgicalOperation(patientProcedures);
}
项目:openMAXims    文件:SurgicalOperationsImpl.java   
private PatientSurgicalOperationVoCollection listSurgicalOperations(CareContextRefVo refCareContext,values);

    return PatientSurgicalOperationVoAssembler.createPatientSurgicalOperationVoCollectionFromPatientSurgicalOperation(patientProcedures);
}
项目:openmaxims-linux    文件:SurgicalOperationsImpl.java   
private PatientSurgicalOperationVoCollection listSurgicalOperations(CareContextRefVo refCareContext,values);

    return PatientSurgicalOperationVoAssembler.createPatientSurgicalOperationVoCollectionFromPatientSurgicalOperation(patientProcedures);
}
项目:AvoinApotti    文件:SurgicalOperationsImpl.java   
public PatientSurgicalOperationVoCollection listClinicalContactSurgicalOperations(ClinicalContactShortVo voClinicalContactShort)
{
    return listSurgicalOperations(null,voClinicalContactShort,false);
}
项目:AvoinApotti    文件:SurgicalOperationsImpl.java   
public PatientSurgicalOperationVoCollection listCareContextSurgicalOperations(CareContextRefVo refCareContext,Boolean bRIE) 
{
    return listSurgicalOperations(refCareContext,null,bRIE);
}
项目:openMAXims    文件:SurgicalOperationsImpl.java   
public PatientSurgicalOperationVoCollection listClinicalContactSurgicalOperations(ClinicalContactShortVo voClinicalContactShort)
{
    return listSurgicalOperations(null,false);
}
项目:openMAXims    文件:SurgicalOperationsImpl.java   
public PatientSurgicalOperationVoCollection listCareContextSurgicalOperations(CareContextRefVo refCareContext,bRIE);
}
项目:openmaxims-linux    文件:SurgicalOperationsImpl.java   
public PatientSurgicalOperationVoCollection listClinicalContactSurgicalOperations(ClinicalContactShortVo voClinicalContactShort)
{
    return listSurgicalOperations(null,false);
}
项目:openmaxims-linux    文件:SurgicalOperationsImpl.java   
public PatientSurgicalOperationVoCollection listCareContextSurgicalOperations(CareContextRefVo refCareContext,bRIE);
}

ims.ocrr.vo.InvestigationOcsQuestionsVoCollection的实例源码

ims.ocrr.vo.InvestigationOcsQuestionsVoCollection的实例源码

项目:AvoinApotti    文件:MyOrderQuestionsPopulation.java   
private CategoryCollection getCategoryCollection(InvestigationOcsQuestionsVoCollection investigationOcsQuestionsColl)
{
    CategoryCollection categoryColl = new CategoryCollection();
    for (int i = 0; investigationOcsQuestionsColl != null && i < investigationOcsQuestionsColl.size(); i++)
    {
        InvestigationOcsQuestionsVo voOrderInv = investigationOcsQuestionsColl.get(i);
        if (voOrderInv.getInvestigationIndexIsNotNull())
        {
            Category category = voOrderInv.getInvestigationIndex().getCategory();
            if (categoryColl.indexOf(category) < 0)
                categoryColl.add(category);
        }
    }

    categoryColl.sort();

    return categoryColl;
}
项目:AvoinApotti    文件:SelectandOrderImpl.java   
public InvestigationOcsQuestionsVoCollection listInvestigationOcsQuestions(Integer[] serviceIds)
{
    if (serviceIds == null || serviceIds.length == 0)
        return null;
    StringBuffer sb = new StringBuffer();

    sb.append(" from Investigation as i1_1 where i1_1.id in ");
    sb.append("(");
    for (int i = 0; i < serviceIds.length; i++)
    {
        sb.append(serviceIds[i]);
        if (i < (serviceIds.length - 1))
            sb.append(",");
    }
    sb.append(")");

    List list = getDomainFactory().find(sb.toString());

    return InvestigationOcsQuestionsVoAssembler.createInvestigationOcsQuestionsVoCollectionFromInvestigation(list);
}
项目:openMAXims    文件:MyOrderQuestionsPopulation.java   
private boolean isInvestigationRemoved(InvestigationRefVo voRefInvestigation,InvestigationOcsQuestionsVoCollection investigationOcsQuestionsColl)
{
    for (int i = 0; investigationOcsQuestionsColl != null && i < investigationOcsQuestionsColl.size(); i++)
    {
        if(investigationOcsQuestionsColl.get(i).equals(voRefInvestigation))
            return false;
    }

    return true;
}
项目:openMAXims    文件:MyOrderQuestionsPopulation.java   
private CategoryCollection getCategoryCollection(InvestigationOcsQuestionsVoCollection investigationOcsQuestionsColl)
{
    CategoryCollection categoryColl = new CategoryCollection();
    for (int i = 0; investigationOcsQuestionsColl != null && i < investigationOcsQuestionsColl.size(); i++)
    {
        InvestigationOcsQuestionsVo voOrderInv = investigationOcsQuestionsColl.get(i);
        if (voOrderInv.getInvestigationIndexIsNotNull())
        {
            Category category = voOrderInv.getInvestigationIndex().getCategory();
            if (categoryColl.indexOf(category) < 0)
                categoryColl.add(category);
        }
    }

    categoryColl.sort();

    return categoryColl;
}
项目:openMAXims    文件:SelectandOrderImpl.java   
public InvestigationOcsQuestionsVoCollection listInvestigationOcsQuestions(Integer[] serviceIds)
{
    if (serviceIds == null || serviceIds.length == 0)
        return null;
    StringBuffer sb = new StringBuffer();

    sb.append(" from Investigation as i1_1 where i1_1.id in ");
    sb.append("(");
    for (int i = 0; i < serviceIds.length; i++)
    {
        sb.append(serviceIds[i]);
        if (i < (serviceIds.length - 1))
            sb.append(",");
    }
    sb.append(")");

    List list = getDomainFactory().find(sb.toString());

    return InvestigationOcsQuestionsVoAssembler.createInvestigationOcsQuestionsVoCollectionFromInvestigation(list);
}
项目:openmaxims-linux    文件:MyOrderQuestionsPopulation.java   
private CategoryCollection getCategoryCollection(InvestigationOcsQuestionsVoCollection investigationOcsQuestionsColl)
{
    CategoryCollection categoryColl = new CategoryCollection();
    for (int i = 0; investigationOcsQuestionsColl != null && i < investigationOcsQuestionsColl.size(); i++)
    {
        InvestigationOcsQuestionsVo voOrderInv = investigationOcsQuestionsColl.get(i);
        if (voOrderInv.getInvestigationIndexIsNotNull())
        {
            Category category = voOrderInv.getInvestigationIndex().getCategory();
            if (categoryColl.indexOf(category) < 0)
                categoryColl.add(category);
        }
    }

    categoryColl.sort();

    return categoryColl;
}
项目:openmaxims-linux    文件:SelectandOrderImpl.java   
public InvestigationOcsQuestionsVoCollection listInvestigationOcsQuestions(Integer[] serviceIds)
{
    if (serviceIds == null || serviceIds.length == 0)
        return null;
    StringBuffer sb = new StringBuffer();

    sb.append(" from Investigation as i1_1 where i1_1.id in ");
    sb.append("(");
    for (int i = 0; i < serviceIds.length; i++)
    {
        sb.append(serviceIds[i]);
        if (i < (serviceIds.length - 1))
            sb.append(",");
    }
    sb.append(")");

    List list = getDomainFactory().find(sb.toString());

    return InvestigationOcsQuestionsVoAssembler.createInvestigationOcsQuestionsVoCollectionFromInvestigation(list);
}
项目:AvoinApotti    文件:MyOrderQuestionsPopulation.java   
private void removeUnusedInvestigations(InvestigationOcsQuestionsVoCollection investigationOcsQuestionsColl,OcsQASessionVo ocsQASession)
{
    InvestigationLiteVoCollection voExistingInvColl = getExistingInvestigations(ocsQASession);
    for (int i = 0; voExistingInvColl != null && i < voExistingInvColl.size(); i++)
    {
        //Check if the investigation was removed
        if(isInvestigationRemoved(voExistingInvColl.get(i),investigationOcsQuestionsColl))
        {
            removeInvestigationFromVo(voExistingInvColl.get(i).getID_Investigation(),ocsQASession);
        }
    }
}
项目:AvoinApotti    文件:MyOrderQuestionsPopulation.java   
private boolean isInvestigationRemoved(InvestigationRefVo voRefInvestigation,InvestigationOcsQuestionsVoCollection investigationOcsQuestionsColl)
{
    for (int i = 0; investigationOcsQuestionsColl != null && i < investigationOcsQuestionsColl.size(); i++)
    {
        if(investigationOcsQuestionsColl.get(i).equals(voRefInvestigation))
            return false;
    }

    return true;
}
项目:openMAXims    文件:MyOrderQuestionsPopulation.java   
private void removeUnusedInvestigations(InvestigationOcsQuestionsVoCollection investigationOcsQuestionsColl,ocsQASession);
        }
    }
}
项目:openmaxims-linux    文件:MyOrderQuestionsPopulation.java   
private void removeUnusedInvestigations(InvestigationOcsQuestionsVoCollection investigationOcsQuestionsColl,ocsQASession);
        }
    }
}
项目:openmaxims-linux    文件:MyOrderQuestionsPopulation.java   
private boolean isInvestigationRemoved(InvestigationRefVo voRefInvestigation,InvestigationOcsQuestionsVoCollection investigationOcsQuestionsColl)
{
    for (int i = 0; investigationOcsQuestionsColl != null && i < investigationOcsQuestionsColl.size(); i++)
    {
        if(investigationOcsQuestionsColl.get(i).equals(voRefInvestigation))
            return false;
    }

    return true;
}
项目:AvoinApotti    文件:MyOrderQuestionsPopulation.java   
public OcsQASessionVo setocsQASessionAnswers(OcsQASessionVo voOcsQASession,CategoryQuestionShortVoCollection categoryConfigQuestions,ServiceQuestionShortVoCollection serviceConfigQuestions,InvestigationOcsQuestionsVoCollection investigationOcsQuestionsColl)
{
    //Everything is driven by the Investigations
    if(investigationOcsQuestionsColl == null || investigationOcsQuestionsColl.size() == 0)
        return null;

    if(voOcsQASession == null)
        throw new CodingRuntimeException("Cannot set answers for null OcsQASessionVo");

    if(voOcsQASession.getCategoryQuestionAnswers() == null)
        voOcsQASession.setCategoryQuestionAnswers(new CategoryQuestionAnswerVoCollection());

    //Get a list of top Categories
    CategoryCollection categoryColl = getCategoryCollection(investigationOcsQuestionsColl);

    //Add new Category /Investigations/Service Questions
    for (int i = 0; i < categoryColl.size(); i++)
    {
        Category category = categoryColl.get(i);
        for (int j = 0; investigationOcsQuestionsColl != null && j < investigationOcsQuestionsColl.size(); j++)
        {
            InvestigationOcsQuestionsVo voInvestigation = investigationOcsQuestionsColl.get(j);

            CategoryQuestionAnswerVo voCategoryQuestionAnswerVo = getCategoryQuestionAnswer(category,voOcsQASession);
            if(voInvestigation.getInvestigationIndex().getCategory().equals(category) && isInvestigationAdded(voInvestigation,voOcsQASession) == false)
            {
                //Category Questions Hierarchy
                buildCategoryQuestions(category,voCategoryQuestionAnswerVo,categoryConfigQuestions);

                //Get Questions that have to be asked in every Investigations
                GeneralQuestionAnswerVoCollection askedInEveryInvestigations = getQuestionsToBeAskedInEveryInvestigation(category,categoryConfigQuestions,serviceConfigQuestions,voInvestigation);

                //Build Service and Investigation Questions
                buildServiceQuestions(category,askedInEveryInvestigations,voInvestigation);

                //Aa CategoryQuestionAnswerVo if there is at least one Question added
                if(isAtLeastOneQuestionAdded(voCategoryQuestionAnswerVo))
                {
                    int index = voOcsQASession.getCategoryQuestionAnswers().indexOf(voCategoryQuestionAnswerVo);
                    if(index < 0)
                        voOcsQASession.getCategoryQuestionAnswers().add(voCategoryQuestionAnswerVo);
                    else
                        voOcsQASession.getCategoryQuestionAnswers().set(index,voCategoryQuestionAnswerVo);
                }

                if(voInvestigation.getProviderService() == null)
                {
                    if(voCategoryQuestionAnswerVo.getClinicalInvestigationQuestionAnswers() == null)
                        voCategoryQuestionAnswerVo.setClinicalInvestigationQuestionAnswers(new InvestigationQuestionAnswerVoCollection());

                    InvestigationQuestionAnswerVo voInvQuestionAnswer = getInstInvestigationQuestionAnswerFromConfigInvestigation(voInvestigation,voCategoryQuestionAnswerVo.getClinicalInvestigationQuestionAnswers(),askedInEveryInvestigations);
                    voCategoryQuestionAnswerVo.getClinicalInvestigationQuestionAnswers().add(voInvQuestionAnswer);
                    voOcsQASession.getCategoryQuestionAnswers().add(voCategoryQuestionAnswerVo);
                }
            }
        }           
    }

    removeUnusedCategoryQuestions(categoryColl,voOcsQASession);
    removeUnusedInvestigations(investigationOcsQuestionsColl,voOcsQASession);

    return voOcsQASession;
}
项目:openMAXims    文件:MyOrderQuestionsPopulation.java   
public OcsQASessionVo setocsQASessionAnswers(OcsQASessionVo voOcsQASession,voOcsQASession);

    return voOcsQASession;
}
项目:openmaxims-linux    文件:MyOrderQuestionsPopulation.java   
public OcsQASessionVo setocsQASessionAnswers(OcsQASessionVo voOcsQASession,voOcsQASession);

    return voOcsQASession;
}

关于多线程之NSInvocationOperation多线程之间如何进行通信的问题我们已经讲解完毕,感谢您的阅读,如果还想了解更多关于Android’InvocationTargetException’和’UnsupportedOperationException’、ims.core.vo.PatientDiagnosisAtConsultationVoCollection的实例源码、ims.core.vo.PatientSurgicalOperationVoCollection的实例源码、ims.ocrr.vo.InvestigationOcsQuestionsVoCollection的实例源码等相关内容,可以在本站寻找。

本文标签: